2011-01-10 3 views
2

Я понимаю, что расширенный контекст продолжительности длится в течение разговора или до тех пор, пока контекст сохранения не будет закрыт контейнером, когда будет завершен метод завершения сеансового компонента состояния (020) иначе уничтожается).Расширенный тип контекста сохранения с JPA 2 и Hibernate

Теперь очевидно, что контекст сохранения также будет закрыт в JPA 2/Hibernate, когда бит уничтожен, но есть ли следствие @Remove в JPA 2/Hibernate?

Также есть ли какие-либо подводные камни, которые следует учитывать при использовании расширенного контекста персистентности?

ответ

2

JPA/Hibernate - технологии персистентности. Они не обрабатывают управление сеансом (менеджером сущностей). Они обеспечивают менеджера объектов и позволяют другим технологиям управлять им.

  • вручную - открывать и закрывать менеджеры сущностей
  • EJB3 - как вы упомянули
  • CDI, весна, Guice и т.д. рамки инъекционные зависимостей.

должны быть обработаны в рамках которого впрыскивает EntityManager, где @PersistenceContext присутствует. Это не может быть только JPA/Hibernate.

+0

1. вообще говоря - через прокси. 2. Да, но лучше нет. Это опять же зависит от реализации, будет ли он терпеть неудачу, сообщить о проблеме и продолжить или молча продолжить. – Bozho

Смежные вопросы