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

민경재님의 프로필 이미지
민경재

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

JPA 단방향 Post Reply @JoinColumn에 대해서

작성

·

145

0

안녕하세요! 지난번의 질문에 대한 답변으로 부터 많은 도움을 받았습니다.

곧바로 또 다른 질문을 해서 죄송합니다. 

상황 : Post Reply  N : 1 단방향 관계. Reply에 객체 그래프가 있음.

여기서 Post를 갖고올 때, Reply 도 PostId가 있는 부분을 같이 가져와야합니다.

그래서 저는

Post post = postRepositroy.find( 1L );

List<Reply> replys = replyRepository.findByPost( post );

return reponseDto(post, replys);

이렇게 갖고 온다고 했을 때,

Reply에 @JoinColumn 으로 PostId가 잇기 때문에 

굳이 인덱스를 걸지 않아도 Lazy로 갖고올 때, 풀스캔을 안타는 걸로 알고 잇씁니다.

하지만, 간혹적인 풀스캔 이슈가 있다고 해서 index를 postId에 걸어주려하는데요.

이런 상황에서 코드를 짤때, 즉,  해당 Post와 거기에 맞는 Reply를 전부 갖고올 때,

어떤식으로 코드를 짜야할지 궁금합니다. 제가 하는 방향성이 맞을까요 ? ? ?

 

답변 1

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 경재님

다음과 같이 작성하시면 됩니다.

JPQL에서 엔티티로 조회

select r From Reply r where r.post = :post

또는 JPQL에서 postId로 직접 조회

select r From Reply r where r.post.postId = :postId

감사합니다.

민경재님의 프로필 이미지
민경재

작성한 질문수

질문하기