лучшая практика создания управления объектами - PullRequest
4 голосов
/ 20 июня 2011

Я использую ресурс локального управления данными с JPA 1. Какова лучшая практика для создания EntityManager,

  1. Создать сделать работу закрыть EntityManager каждый раз. (Entitymanager не тяжелый вес, но все еще скучно)

  2. Создайте EntityManager для каждого потока, сохраните его как переменную ThreadLocal и используйте его (где я должен закрыть EntityManager b-Любая сущность, хранящаяся в bean-объекте области сеанса, будет отсоединенной сущностью, потому что entitymanager, какая сущность в своем постоянном контексте закрыта или принадлежит другому потоку.)

  3. Хранение управления объектами в сессионном компоненте и использование одного и того же управления объектами во время сеанса (сеансы, не принадлежащие друг другу)

Ответы [ 2 ]

5 голосов
/ 20 июня 2011

Вы должны вводить EntityManager, используя аннотацию @PersistenceContext. Не беспокойтесь о том, откуда оно исходит & mdash; это внедрение зависимости на работе.

3 голосов
/ 22 июня 2011

Я создаю EntityManager для каждого запроса и закрываю их в ServletRequestListener.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...