LINUX.ORG.RU

История изменений

Исправление php-coder, (текущая версия) :

Есть пара вариантов:

1) Объявить AccountEntity.card и AccountEntity.holder с FetchType.EAGER (достаточно просто убрать FetchType.LAZY)

2) Использовать FETCH JOIN: http://docs.oracle.com/cd/E17904_01/apirefs.1111/e13946/ejb3_langref.html#ejb...

3) Использовать SELECT NEW. В этом случае AccountDao.getAccountByEan() будет возвращать не сущность, а сразу Account. Для этого понадобится в Account добавить конструктор, который бы принимал AccountEntity и делал все то, что сейчас делает extractAccount(). Запрос придётся переписать в стиле

select new a.b.c.Account(a) from AccountEntity a where a.ean = :ean"

Пример есть здесь: http://vard-lokkur.blogspot.ru/2013/05/jpa-basic-projections.html

Исходная версия php-coder, :

Есть пара вариантов:

1) Объявить AccountEntity.card и AccountEntity.holder с FetchType.EAGER (достаточно просто убрать FetchType.LAZY)

2) Использовать JOIN FETCH: http://docs.oracle.com/cd/E17904_01/apirefs.1111/e13946/ejb3_langref.html#ejb...

3) Использовать SELECT NEW. В этом случае AccountDao.getAccountByEan() будет возвращать не сущность, а сразу Account. Для этого понадобится в Account добавить конструктор, который бы принимал AccountEntity и делал все то, что сейчас делает extractAccount(). Запрос придётся переписать в стиле

select new a.b.c.Account(a) from AccountEntity a where a.ean = :ean"

Пример есть здесь: http://vard-lokkur.blogspot.ru/2013/05/jpa-basic-projections.html