Ich habe eine Entität namens Ort wie: -Hibernate HQL Abfrage erhalten Daten aus der Tabelle mit einer anderen Tabelle zugeordnet
@Entity
@Table(name = "CMN_LOCALITY_MASTER")
public class Locality {
@Id
@Column(name = "LOCALITY_ID", unique = true, nullable = false,length = 11)
@GeneratedValue(strategy = GenerationType.IDENTITY)
int localityId;
@Column(name = "LOCALITY_DESCRIPTION",length=70)
String localityDescription;
@JsonProperty(access = Access.WRITE_ONLY)
@ManyToOne
@JoinColumn(name = "PINCODE_ID")
Pincode pinCode;
@JsonIgnore
@ManyToOne
City city;
}
, die eine andere Einheit enthält Stadt und Pincode genannt.
City ist wie folgt: -
@Entity
@Table(name = "CMN_CITY_MASTER")
public class City{
@Id
@Column(name = "CITY_ID", unique = true, nullable = false,length = 11)
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int cityId;
@Column(name = "CITY",length = 150)
private String description;
@JsonIgnore
@ManyToOne
@JoinColumn(name = "STATE_ID")
private State state;
}
ich alle Daten von Ort Einheit/table erhalten möchten, die Stadt ID hat = (zB 1)
ich unten Abfragen versucht: -
@Query("SELECT a FROM Locality a INNER JOIN a.city c WHERE c.cityId=?1")
List<Locality>getAllLocalityByCity(int cityId);
und auch
@Query("SELECT a FROM Locality a WHERE a.city.cityId=?1")
List<Locality>getAllLocalityByCity(int cityId);
Aber diese funktionieren nicht.
Können Sie mir bitte etwas vorschlagen, um die Daten abzufragen?
Gibt es auch ein Eclipse Plug-In/Tool, um HQL-Abfragen schneller zu testen als den Server für jede Änderung in der Abfrage neu zu starten?
Können Sie auch vorschlagen, Dokumente/Bücher zum Erlernen von HQL zu lesen?
Ja, das hat funktioniert. Tatsächlich gab es einen Fehler im Spaltennamen im Schema. und daher funktionierte die Abfrage nicht. Ich überprüfte die Protokolle und korrigierte es. Danke vielmals.. :) – aniltilanthe