화면 조회시 사용되는 복잡한 쿼리들은 기존 리포지토리를 사용하지 말고, 새로운 리포지토리를 생성하여 사용 권장
// 기능 인터페이스 생성
public interface MemberRepositoryCustom {
List<Member> findMemberCustom();
}
// 인터페이스 구현
@RequiredArgsConstructor
public class MemberRepositoryImpl implements MemberRepositoryCustom { // 이름을 맞춰야함 class명 + impl
private final EntityManager em; // 주입 권장방식
@Override
public List<Member> findMemberCustom() {
return em.createQuery("select m from Member m", Member.class).getResultList();
}
}
// 인터페이스 상속
public interface MemberRepository extends JpaRepository<Member, Long>, MemberRepositoryCustom {
}
'JPA > JPA' 카테고리의 다른 글
insert, update, delete 주의 사항(쿼리 실행 순서) (0) | 2020.11.11 |
---|---|
SAVE 메서드 주의 사항 (0) | 2020.06.09 |
페이징 처리 (0) | 2020.06.09 |
Auditing (0) | 2020.06.09 |
컬렉션 조회(OneToMany) (0) | 2020.06.09 |