현재 JPA의 개념을 이해하는 데 문제가 있습니다.Application 대 Container Managed EntityManager
현재 프로젝트를 시연하기 위해 최근의 EclipseLink, Glassfish, Derby 데이터베이스를 사용하고 있습니다.
훨씬 더 큰 그림으로 무언가를 개발하기 전에이 PersistingUnit이 다른 범위의 관점에서 어떻게 작동하는지 절대적으로 확신해야합니다.
나는 서블릿 3.0을 가지고 있으며 현재 request.session 객체 (동일한 war 파일에있는 모든 것)에 사용자의 연관된 엔티티 클래스를 저장하고있다. 현재 EntityManagerFactory 및 UserTransaction 주입을 사용하여 응용 프로그램 관리 EntityManager를 사용하고 있습니다. 혼자서 테스트 할 때 부드럽게 작동합니다. 서로 다른 버전의 엔티티는 2 명의 사용자가 동시에 동일한 엔티티에 액세스 할 때 발생합니다. 가능하다면 동일한 WAR, 동일한 지속성 단위를 거친 관리 빈들과 함께 작업하고 싶습니다.
나는 http://docs.oracle.com/javaee/6/tutorial/doc/bnbqw.html을 읽고 나에게 의미가없는 범위에 대한 설명을 많이 읽었습니다.
짧은 이야기 짧은 이야기와 앱 및 컨테이너 관리 EntityManagers의 차이점은 무엇입니까?
당신은 "당신이 콘테이너를 가지고 있다고 상상해보십시오, 콘테이너를 관리하고있는 트랜잭션을 커밋하거나 롤백 할 때를 알고 있습니다. 누군가를 대신하여 트랜잭션을 처리합니다." –
컨테이너는 Spring과 유사합니다. bean을 구성 할 때 엔티티 bean을 구성하는 것과 같은 tansaction 엔티티를 지정하고 Bean을 @Transactional로 지정하고 트랜잭션이 Spring에 의해 처리되도록 지정합니다. – mprabhat
무엇을 반영하는 질문을 발견 했습니까? 나는 "애플 리케이션과 컨테이너 관리 EntityManagers의 사용법과 차이점"을 찾고 있었는데, 단지 받아 들인 응답이 뭔가 다른 것 (컨테이너 대 애플 리케이션이 _transactions_를 처리했다는 것을 알아내는 것)을 찾고 있었다. 그 대답은 OP가 말하지 않은 "애플리케이션 관리 트랜잭션을 말할 때"로 시작합니다. – alterfox