Вопрос

У меня есть объект JPA (объект A) с отношением владения «один-многие» (объект B) в ArrayList.

Я хочу иметь возможность запрашивать (либо Hibernate, либо JPA) объект A без возврата каких-либо экземпляров объекта ассоциации B (без прокси или чего-либо еще) в One-Many ArrayList.

В идеале возвращаемый ArrayList должен быть нулевым или пустым.

Это возможно?В грубом псевдокоде это то, что я хочу:

«из ObjectA, где ObjectA.id=5 НЕ ВКЛЮЧАТЬ ObjectB»

или

«Выберите из ObjectA FETCH IGNORE a.ObjectBs, где a.id=5»

Это было полезно?

Решение

Если ассоциация для ObjectB в ObjectA является ленивой, ObjectB не будет возвращена с вашим запросом, если только ваш запрос не указывает на их получение.

Если бы вы получили доступ к каким-либо объектам ObjectB после закрытия сеанса, вы получили бы исключение LazyInitializationException, поскольку ваши объекты ObjectB не были загружены в память.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top