Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- react
- MySQL
- Git
- NCP
- Spring
- springboot
- VSCode
- Java
- nodejs
- jetbrains
- JPA
- log4j2
- Kubernetes
- dbeaver
- wildfly
- docker
- IntelliJ
- nginx
- kubectl
- LOG4J
- tibero
- useEffect
- JavaScript
- mybatis
- BPMN
- intellijIDEA
- gradle
- database
- Windows
- gson
Archives
- Today
- Total
두 손끝의 창조자
Spring에서 EntityManager 가져오기 본문
EntityManagerFactory 는 persistence.xml 에 정의한 persistence unit 당 하나를 만든다. 팩토리는 애플리캐이션 레벨에 하나만 존재하면 되고 이 팩토리를 이용해서 EntityManager를 만들어서 데이터 처리를 하면된다.
스프링에는 트랜잭션을 ThreadLocal 을 이용해서 관리하고 있는데 한번 만들어진 EntityManager를 같은 스레드 내에서 가져오고 싶을 때 편리한 유틸리티 클래스를 제공한다.
EntityManagerFactoryUtils 이 그것이다.
getTransactionalEntityManager 메소드에 EntityManagerFactory를 파라미터로 전달해서 현재 스레드에서 동작중인 EntityManager 를 가져온다. 여러 클래스와 메소드를 넘나들며 데이터 작업을 해야하는 경우 EntityManager 를 파라미터로 넘겨가며 할 필요없이 스프링이 관리하는 트랜잭션 매니저로 편리하게 사용하자.
반응형
Comments