스프링 데이터 JPA는 스프링 프레임워크에서 JPA를 편리하게 사용할 수 있도록 지원하는 라이브러리다.

Spring DATA JPA는 CRUD를 처리하기 위한 공통 인터페이스를 제공한다.
데이터 접근 계층을 개발할 때 구현 클래스 없이 인터페이스만 작성해도 개발을 완료 할 수 있기 때문에 ,개발자는 인터페이스만 작성한다
스프링 데이터 JPA가 애플리케이션이 실행 시점에 구현 객체를 동적으로 생성해서 주입한다.

물론 별도의 구현체를 두어 커스터 마이징 할 수 도 있다.

CrudRepository (Spring Data Core 2.6.1 API)
라이브러리 추가
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
환경 설정:위치 설정
별도의 설정파일을 두어 jpa:repositories 를 사용해서 base-package를 설정할 수 도 있다.
@Configuration
@EnableJpaRepositories(basePackages = "jpabook.jpashop.repository")
public class AppConfig{ }