EntityManager
을 사용하는 경우 PersistenceContext
으로 인스턴스 하나를 얻고 내 프로그램에서 전달하는 것이 더 좋습니까? 아니면 종속성 삽입을 두 번 이상 사용해야합니까?EntityManager 초기화 모범 사례
내 응용 프로그램에서 각 클라이언트는 stateful 세션 빈과 통신 할 것이며 각 빈은 어느 시점에서 EntityManager
을 사용해야합니다. 나는 콩 메소드가 동시에 호출된다고 생각한다. EntityManager
을 스레드로부터 안전하게 사용하도록 어떻게 보장합니까? 거래가 있습니까? 각 빈에 별도의 인스턴스가 있습니까?
죄송합니다. 혼란 스럽다면 EJB/JPA를 처음 사용하고 제 질문에 대한 자료를 찾을 수 없었습니다.
답변 해 주셔서 감사합니다. 따라서 내 스테디ful bean은'EntityManager' 속성을 가져야하고 매개 변수를 통해 DB에 액세스하는 다른 객체에 전달해야합니다. –
예, 필요한 경우. 그러나 EJB를 사용할 때는 Session Bean 자체 (Stateless 또는 Stateful)에서 EntityManager API에 액세스하는 것이 가장 좋습니다. EntityManager 인스턴스를 전달할 필요가 없다. 물론 다른 종류의 관리 빈 (MDB와 같은)도 동일한 기능을 수행 할 수 있습니다. –