JPA Hibernate: Как предотвратить соединение при получении? - PullRequest
1 голос
/ 13 января 2010

Предположим, у меня есть следующие объекты (одна таблица на объект) с этими отношениями: A -> B -> C -> D

Если я нахожу в экземпляре A все B, C и D, то это не то, что мне нужно. Можно ли заставить Hibernate только возвращать A (или только его примитивные свойства)?

Я знаю, что могу написать "SELECT a.x, a.y, a.z, ... FROM A" и затем вручную поместить список результатов объектов в A, но это несколько своевременно, так как я должен вручную заполнить все свойства. Я также проверил все подсказки запроса Hibernate , но ничего не связано.

Мохсен

Ответы [ 3 ]

2 голосов
/ 13 января 2010

Если у вас есть конструктор для A, который заполняет все поля, кроме тех, к которым вы не хотите присоединяться, вы можете выбрать так:

SELECT NEW A(a.x, a.y, a.z) FROM A a
2 голосов
/ 13 января 2010

выберите из A a?

также, как вы наметили свои отношения? lazy = "proxy" и fetch = "join"?

1 голос
/ 13 января 2010

Вы можете указать fetch = "select" и lazy = "true" в вашем отображении.Особенно если ваши отношения -> списки.

...