인프런 커뮤니티 질문&답변

restpmpmpm님의 프로필 이미지

작성한 질문수

실전! 스프링 데이터 JPA

예제 도메인 모델과 동작확인

단방향으로 코드를 짜도 Lazy 로딩으로 바꿔야하나요??

작성

·

211

0

양방향으로 코드를 짤때 Lazy로 바꿔야하는건 이유를 아는데

단방향일때는 굳이 안바꿔도 되지 않을까 생각이 들어 질문합니다.

답변 1

1

안녕하세요. restpmpmpm님, 공식 서포터즈 y2gcoder입니다.

개인적으로 양방향이든 단방향이든 Lazy 로딩은 그 자체로 의미를 갖는다고 생각합니다.

왜냐하면 지연 로딩 덕분에 연관관계의 엔티티 정보에 대한 조회를 케이스에 따라 같이 조회하지 않을 수 있기 때문입니다.

예를 들어 멤버 : 팀(N:1)의 관계가 있고 멤버에만 팀에 대해 단방향 관계가 걸려있다고 가정해보면, 멤버의 정보를 조회할 때 항상 팀의 정보가 같이 필요하지 않을 수 있습니다. 또한 주문 : 회원(N:1)의 관계도 마찬가지입니다. 주문 정보를 조회할 때 email, password와 같은 회원정보는 필요하지 않을 수 있습니다.

저는 연관관계 엔티티 정보에 대한 조회를 선택적으로 할 수 있다는 점에서 JPA의 진가가 드러난다고 생각합니다 🙂

 

감사합니다.