2012-06-01 1 views
14

Ich habe eine Person JPA-Entität und meine Person hat mehrere Adressen (OneToMany-Beziehung von Person zu Adresse). Ich möchte in der Lage sein, eine Abfrage für alle Leute zu machen, die eine Partikel-Postleitzahl haben, aber ich bin nicht sicher, nachdem ich die querydsl-Dokumentation gesehen habe, wie man die Sammlung richtig behandelt.Verwenden von querydsl Wie kann ich anhand einer Gruppe von Objekten, die aus einer Eins-zu-Viele-Beziehung resultieren, ein bestimmtes Objekt überprüfen?

kann ich die Adressen zugreifen, aber ich bin nicht sicher, was mit ihnen zu tun:

QPerson qPerson = QPerson.person; 
personDao.findAll(qPerson.addresses._SPECIFICADDRESS_.zip.eq('73130')); 

Wie kann ich die SPECIFICADDRESS ich suchen sie?

Antwort

21

Versuchen Sie, diese

QPerson qPerson = QPerson.person; 
personDao.findAll(qPerson.addresses.any().zip.eq('73130')); 
+0

zu einfach Looks ... wird es so bald versuchen, wie ich an einem Terminal bin zurück. Vielen Dank! – codeLes

+7

Es sollte einfach aussehen. Das ist der Sinn von Querydsl! ;) –

+0

Das ist großartig. Was mich jetzt wirklich dazu bringt, ist, dass ich einen ganzen Stapel von Sammlungen mit Sammlungen noch spezifischer machen muss ... Das ist zwar wirklich spaßig, aber das herauszufinden. Danke für die Hilfe. – codeLes

Verwandte Themen