2010-06-25 7 views
3

나는 감사 목적으로 사용하는 Hibernate Envers 리스너를 몇 개 가지고있다. 저는 CDI를 시작하기 시작했으며 지금까지 그 단순함과 힘에 유쾌하게 놀라곤합니다. 모든 것이 CDI 기능을 통합하는 것 같아서, 나는 그 질문을 제기 할 것이라고 생각했다. Hibernate가 그것을 지원할 것인가, 아니면 그것을 할 것인가?Hibernate - CDI

다양한 구성 요소에 액세스하는 것이 좋을뿐만 아니라 다른 상황 정보에 쉽게 액세스 할 수 있고 Hibernate의 인터페이스로 제한되지 않는 것이 좋습니다.

답변

1

질문은 다른 방향이어야합니다. CDI는 최대 절전 모드 통합을 지원합니다. CDI 아마 확장을 통해 지원해야 무엇

은 다음과 같습니다이있는 곳

  • @PersistenceContextEntityManagerEntityManagerFactory을 주입 @PersistenceUnit
  • 거래 및 세션 수명주기 처리

Google for "Weld Persistence Context"및 CDI의 참조 구현 인 Weld에서 Hibernate (JPA)를 사용하는 방법의 몇 가지 예를 살펴 보겠습니다. this thread도 읽으십시오. 그리고 this example

+0

아마 그것이 작동해야 할 것 같아요. CDI가 제공하는 문맥 정보에 쉽게 액세스하고 싶습니다. 나는 보안을 평가하거나 거의 노력하지 않고 다른 정교한 일을하기 위해 구성 요소를 청취자에게 주입하려고합니다. –

+0

필자는 인터페이스가있는 쿼리를 작성할 수있는 CDI 확장 프로그램을 개발 중입니다. @NamedQuery를 사용하는 것과 비슷하게 메서드에 대한 실제 쿼리를 작성합니다. 이 메서드를 사용하면 쿼리의 매개 변수를 지정할 수있을뿐 아니라 형식을 반환하는 반환 형식을 지정할 수 있습니다. 반면 엔터티 쿼리는 안전하지 않습니다. 또한 @Producer/@WebRemote에 푹 빠져서 3 줄의 코드로 웹 서비스를 쉽게 만들 수 있습니다. –

+0

독립 실행 형 응용 프로그램에서 @PersistenceContext를 아직 실행하지 못했습니다. –