작성
·
105
0
1. em을 출력해봤는데 왜 em은 프록시 객체가 들어오는가? 뭘 위해서?
2. 여러 리포지토리에 있는 em을 다 출력해보니 모두 같은 em 객체였다. 즉, em도 스프링 빈으로 등록되어 (사실은 proxy) 싱글톤으로 관리되고 모든 리포지토리 계층에서 같은 em을 사용하는 것일까?
3. 그렇다면 그림하고 다른 것이 있는데 em이 transaction이 생성될때마다 생기는 것이 아니라 그냥 하나를 여러 쓰레드에서 접근하는 것인가?? 그럼 내부에 쓰레드 세이프하게 코드가 짜져있어서 가능한걸까(락을 거는 것)? 여러 쓰레드가 동시에 접근하는 경우 락이 걸려있으면 하나의 요청이 처리될때까지 다른 쓰레드들은 대기하게 될텐데 그러면 멀티쓰레딩의 의미가 없는 것이 아닐까?