<aside> ❗

스프링 데이터 JPA

public interface MemberRepository extends JpaRepository<Member, Long> {

    // select m from Member m where m.name = ? 형식으로 SQL을 짜버린다.
    List<Member> findByName(String name);
}

스프링 데이터 JPA는 스프링과 JPA를 활용해서 애플리케이션을 만들 때, 정말 편리한 기능을 많이 제공한다. 단순히 편리함을 넘어서 때로는 마법을 부리는 것 같을 정도로 놀라운 개발 생산성의 세계로 우리를 이끌어 준다.


하지만 스프링 데이터 JPA는 JPA를 사용해서 이런 기능을 제공할 뿐이다. 결국 JPA 자체를 잘 이해하는 것이 가장 중요하다.


분석, 설계 → 모델링 → 엔티티 설계 → DB 테이블 설계

스프링 DATA JPA 메뉴얼 보면 이해할 수 있다.

→ 한계를 알고 사용해야 한다. 그렇지 않으면 롤백하게 됨

→ 페이징 쿼리시 토탈 카운트 잘못 사용하면 분리해서 사용해야 함

</aside>