jpa Repository
- 순수 jpa로 Repository기능을 개발하게 되면 save(),find(),delete(),findAll(),findById() 등등 crud 기반의 반복되는 코드를 개발해야한다. 이 번거로움과 쿼리문을 간단하게 Data jpa가 생성해준다.
- 스프링 데이터 JPA(인터페이스)가 구현 클래스를 대신 생성해준다.

- 장점
- @Repository 애노테이션 생략 가능
- 컴포넌트 스캔을 스프링 데이터 JPA가 자동으로 처리
- JPA 예외를 스프링 예외로 변환하는 과정도 자동으로 처리
제네릭 Generic < T , ID > 은 이렇게 입력해주면 된다.
T: 엔티티 타입
ID: 식별자 타입(PK)

스프링 데이터 jpa는 일반 jpa기반 Repository 기능을 담고 있으며 여러 메서드 기능을 가진다.