2009-02-12 8 views
0

J'ai entité JPA (Object A) avec une relation un-plusieurs possédante (Object B) dans un ArrayList. Je veux être en mesure d'interroger (Hibernate ou JPA) pour l'objet A sans avoir aucune des instances de l'association d'objet B retourné (pas de proxy ou autrement) dans la liste de tableaux One-Many.JPA et Hibernate Fetch ignorant les associations?

Idéalement, le ArrayList retourné serait nul ou vide.

Est-ce possible? Dans ce pseudocode rugueux est ce que je veux:

"de ObjectA où ObjectA.id = 5 NE COMPREND PAS ObjectB"

ou

« Sélectionnez un de ObjectA un FETCH IGNORE a.ObjectBs où. id = 5"

Répondre

2

Si l'association pour ObjectBs en ObjectA est paresseux, ObjectBs ne sera pas retourné avec votre requête, sauf si votre requête spécifie les chercher.

Si vous deviez accéder à toutes les ObjectBs une fois que votre session est fermée, vous obtiendrez un LazyInitializationException parce que vos ObjectBs ne sont pas chargés en mémoire.