오류일기
@PostConstructor에서 지연로딩 사용하기
sami355
2023. 8. 2. 10:54
링크
https://www.inflearn.com/questions/963059/postconstructor-관련해서-질문있습니다
현상
@PostConstructror에서 지연로딩 시도시 JPA에서 쿼리를 하나 보내고 바로 DB와의 트랜잭션을 종료하여 지연로딩에 실패하는 현상이 발생
원인
@PostConstructor는 빈 컨테이너의 초기화가 완료된 이후 실행되는 것이 아닌 빈 객체만 생성되고 트랜잭션같은 AOP 작업은 성공적으로 수행되지 못해 지연로딩에 실패하는것이다.
고치는 법
@PostConstructor에서 직접 트랜잭션을 열어 수행해주면 된다.