Спящий режим — CDI

У меня есть несколько прослушивателей Hibernate Envers, которые я использую для целей аудита. Я только начинаю работать с CDI и пока приятно удивлен его простотой и мощью. Поскольку кажется, что все интегрирует функциональность CDI, я подумал, что задам вопрос, поддерживает ли Hibernate его или будет?

Было бы не только хорошо иметь доступ к различным компонентам, но также было бы здорово иметь легкий доступ к другой контекстной информации и не ограничиваться интерфейсами Hibernate.


person Community    schedule 25.06.2010    source источник


Ответы (1)


Вопрос должен быть наоборот - будет ли CDI поддерживать интеграцию с гибернацией.

То, что CDI должен поддерживать, вероятно, через расширение, это:

  • ввод EntityManager там, где есть @PersistenceContext, и EntityManagerFactory там, где есть @PersistenceUnit
  • обработка транзакций и сеансов жизненного цикла

Поищите в Google «Weld Persistence Context», и вы получите несколько примеров использования Hibernate (JPA) с Weld, которая является эталонной реализацией CDI. Прочтите также эту тему. И этот пример

person Bozho    schedule 25.06.2010
comment
Я думаю, возможно, именно так это должно было бы работать. Мне нужен легкий доступ к контекстуальной информации, которую предоставляет CDI. Я хочу внедрить компоненты в свои слушатели для оценки безопасности или выполнения других сложных действий с минимальными усилиями. - person ; 27.06.2010
comment
К вашему сведению, я работаю над расширением CDI, которое позволяет вам писать запросы с интерфейсом. Подобно использованию @NamedQuery, вы напишете свой фактический запрос в методе. Этот метод позволит вам указать параметры для вашего запроса, а также тип возвращаемого значения, обеспечивающий безопасность типов, в отличие от Entity Query. Я также хотел бы, чтобы это было подключено к @Producer / @WebRemote, чтобы вы могли легко получить веб-сервис с 3 строками кода. - person ; 27.06.2010
comment
Я еще не запустил @PersistenceContext в автономных приложениях. - person Ondra Žižka; 27.05.2011
comment
Если вы делаете это, вы сильно рискуете. Не верьте всему, что есть на слайде. Некоторые ссылки, которые я нашел недавно, например, pragmatic-jee.blogspot.com/2011/08/ Я нашел его по адресу javalabor.blogspot.com/2011/08/, где состоялось интересное обсуждение. - person Dar Whi; 25.08.2011