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 {
}

 

'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