2010-05-11 2 views
0

다른 엔티티 관리자에 사용할 수 있도록 엔티티 관리자 컨텍스트 외부에서 데이터베이스 연결을 관리하려고합니다. 문제는 persistence.xml에 속성을 제공하는 대신 자체적으로 연결로 엔티티 관리자 팩토리 또는 엔티티 관리자를 빌드하는 방법입니다.특정 JDBC 연결 인스턴스가있는 JPA 빌드 엔티티 관리자

+0

SE 응용 프로그램 또는 EE 컨텍스트 내에 있습니까? – Justin

+0

SE 응용 프로그램입니다. – Wickoo

답변

1

어느 경우 든 SE에서 EntityManagerFactory를 만들 때 db 연결 속성을 지정할 수 있지만 DB 연결은 EntityManager에서 유지 관리 할 수 ​​없습니다. EntityManager의 뒤에서 롤백합니다. 만약 당신이 여러 개의 EntityManager에 동일한 db 커넥션을 제공했다면, 이것은 혼돈이 될 것입니다. 왜 이것을 원한다고 나는 확신하지 못합니다.

내가 제안 할 수있는 가장 좋은 것은 EntityManager.getDelegate() (JPA 1.0) 또는 EntityManager.unwrap (JPA 2.0) 메소드를 살펴보면 기본 제공자 (예 : Hibernate) 객체를 사용하여 데이터베이스 연결을 해제 할 수는 있지만 확실히 대체 할 수는 없습니다.

정말 짧은 아이디어입니다.