-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
안녕 하세요
20.01.24 14:17 작성 조회수 172
10
entitymanager는 thread에 safe하지 않는걸로 알고 있습니다
근데 강의에서 thread에 safe하다고 하셔서 확인해보니 safe하지 않네요.
spring container가 thread safe하게 관리해주는 것으로 알고 있습니다 맞나요?
답변을 작성해보세요.
9
김영한
지식공유자2020.01.25
좋은 질문입니다. 김성겸님^^
엔티티매니저는 thread safe 할 수도 있고 안할 수도 있습니다.
순수하게 자바환경에서 직접 엔티티메니저를 사용하면 쓰레드 세이프 하지 않습니다.
그런데 스프링 컨테이너를 포함한 J2EE 컨테이너들은 JPA 표준 스펙에 맞추어서 주입받은 엔티티매니저가 쓰레드 세이프 하도록 되어 있습니다.
쉽게 이야기해서 성경님이 말씀하신 것 처럼 스프링 컨테이너가 쓰레드 세이프하게 관리해주는게 맞습니다.
조금 더 자세한 내용은 JPA 책 13.1 트랜잭션 범위의 영속성 컨텍스트를 참고해주세요^^
감사합니다.
답변 1