JPA/JPA
사용자 정의 리포지토리 구현
lovineff
2020. 6. 9. 10:40
화면 조회시 사용되는 복잡한 쿼리들은 기존 리포지토리를 사용하지 말고, 새로운 리포지토리를 생성하여 사용 권장
// 기능 인터페이스 생성
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 {
}