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

박우진님의 프로필 이미지

작성한 질문수

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

대용량 필터링의 경우 추천되는 방법이 궁금합니다(JPA의 철학).

작성

·

186

0

안녕하세요.
JPA를 공부하며 궁금한 점이 생겨서 질문드립니다.
 
[상황]
현재 숙소 엔티티 내부의 이미지와 요금 정책등을 가져오는 로직을 개발 중입니다. 아래 2가지 방법을 고민중입니다.
1) @Query를 사용해 직접 DB에 쿼리문 전송(필터링 조건 포함)
2) roomId로 숙소를 가져와 객체들을 탐색하며 필터링
 
[고민]
위처럼 대용량의 데이터를 필터링해야 하는 경우에 @Query를 통해 데이터베이스에서 직접 필터링하는 경우와 자바 코드상에서 find해온 결과를 필터링해서 사용하는 것 중에 어느 것이 더 JPA스러운지, 어느 것이 더 성능상의 이점이 있는지 궁금합니다.

답변 1

1

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

안녕하세요. 박우진님

데이터베이스에서는 데이터를 최소화해서 조회하는 것이 필요합니다.

보통 리스트를 조회할 때는 @Query를 사용하고, PK로 하나의 엔티티를 찍어서 조회하는 상세 기능의 경우 find()를 사용하게 됩니다.

감사합니다.