Tech/JPA
JpaRepositry vs CrudRepository 어떤 것을 써야할까?
주지민
2021. 9. 2. 14:55
반응형
참고: http://jtuts.com/2014/08/26/difference-between-crudrepository-and-jparepository-in-spring-data-jpa/
CrudRepository이란?
- 기본적인 CRUD 기능을 제공합니다
- org.springframework.data.repository.CrudRepository 패키지 소속
- 즉 Spring Data 코어 라이브러리 소속이다 ( 특정 인프라스트럭처에 의존하는 것이 아닌 범용 라이브러리 )
JPARepository이란?
- JPA에 특화된 기능을 제공합니다
- 지속성 컨텍스트 플러시 및 배치에서 레코드 삭제와 같은 JPA 관련 메소드를 제공합니다.
- 상속 구조
- CrudRepository(Spring Data 범용)
- -> PagingAndSortingRepository(Spring Data 범용, 페이지 매김 및 정렬을 수행하는 메소드 제공)
- -> JpaRepository(Spring Data JPA 특화)
언제 어떤 걸 써야할까?
- 일반적으로 정렬 및 페이징이 필요한지 여부에 따라 CrudRepository 또는 PagingAndSortingRepository 를 사용하는 것이 가장 좋다
- JpaRepository는 JPA 기술에 레포지토리가 의존하기 때문에 피해야한다,
- 심지어 대부분의 경우에 JpaRepository에서만 제공하는 별도의 방법을 사용하지 않을 확률이 높다
728x90
반응형