Hi-Ho,
ich habe mal eine Frage ob und wie ich das mit JPA darstellen kann:
Klasse A hat eine Collection mit Klasse B. Objekte der Klasse B können in den B-Collections von mehreren A-Objekten auftauchen. Praktisch
Ich möchte jetzt einen Named-Query, der mir alle Objekte der Klasse A zurückgibt, deren B-Collection ein bestimmtes B-Objekt enthält. Also bpsw.:
Nur wie sieht dazu der NamedQuery aus? Ich suche also in etwa sowas:
Ich hoffe ihr versteht was ich meine, ansonsten einfach nachfragen .
Danke!
Ps.: Where darf ich nicht in den titel schreiben, da er "here" nicht mag, Whore aber schon
[edit] Nachdem ich noch keine Antwort habe, habe ich die selbe Frage mal hier gestellt.
ich habe mal eine Frage ob und wie ich das mit JPA darstellen kann:
Klasse A hat eine Collection mit Klasse B. Objekte der Klasse B können in den B-Collections von mehreren A-Objekten auftauchen. Praktisch
Code:
// mapping
public class A {
// mapping
private Collection[B] bs;
}
...
// Pseudocode, wird natürlich automatisch gemapped
B b1 = new B();
B b2 = new B();
A a1 = new A();
A a2 = new A();
a1.add(b1);
a1.add(b2);
a2.add(b2);
Ich möchte jetzt einen Named-Query, der mir alle Objekte der Klasse A zurückgibt, deren B-Collection ein bestimmtes B-Objekt enthält. Also bpsw.:
Code:
entityManager.createNamedQuery(A.GET_A_WITH_B)
.setParameter(1, b1)
.getResultList();
// Rückgabe von a1
Nur wie sieht dazu der NamedQuery aus? Ich suche also in etwa sowas:
Code:
@NamedQuery(name=A.GET_A_WITH_B, query="SELECT a FROM A a WHERE 1? IN bs")
Ich hoffe ihr versteht was ich meine, ansonsten einfach nachfragen .
Danke!
Ps.: Where darf ich nicht in den titel schreiben, da er "here" nicht mag, Whore aber schon
[edit] Nachdem ich noch keine Antwort habe, habe ich die selbe Frage mal hier gestellt.