Я пытаюсь вернуть Raadpleging
объекты из моей БД. Эти объекты содержат Persoon
и Les
. Моя цель - вернуть всех Raadplegingen, где идентификатор Les равен параметру.
Я не уверен, как это сделать в моем запросе. Я также не уверен, вернет ли мой первый namedQuery свойство Persoon и Les или мне для этого понадобится объединение.
Как вы можете видеть ниже, я попытался использовать параметр, подобный этому WHERE r.les = :lesId
, что, я думаю, неверно.
@Entity
@Access(AccessType.PROPERTY)
@Table(name = "Raadplegingen")
@NamedQueries({
@NamedQuery(name = "ClubRaadpleging.getAlleRaadplegingen",
query = "SELECT r FROM ClubRaadpleging r"),
@NamedQuery(name = "ClubRaadpleging.findByLes",
query = "SELECT r FROM ClubRaadpleging r JOIN ClubLes l ON l.id =r.les.id WHERE r.les = :lesId")
})
public class ClubRaadpleging implements Serializable {
private int id;
private ClubLes les;
private ClubPersoon persoon;
private Date datum;
public ClubRaadpleging() {
}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "RaadplegingId")
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@ManyToOne(cascade = CascadeType.PERSIST)
@JoinColumn(name = "LesId")
public ClubLes getLes() {
return les;
}
public void setLes(ClubLes les) {
this.les = les;
}
@ManyToOne(cascade = CascadeType.PERSIST)
@JoinColumn(name = "PersoonId")
public ClubPersoon getPersoon() {
return persoon;
}
public void setPersoon(ClubPersoon persoon) {
this.persoon = persoon;
}
@Temporal(TemporalType.DATE)
public Date getDatum() {
return datum;
}
public void setDatum(Date datum) {
this.datum = datum;
}
}