본문 바로가기

개발공부

[ Java Spring ] CRUD Repository vs JPA Repository

CRUD Repository

CRUD Repository는 Repository 인터페이스를 확장하며, save(), saveAll(), findAll() 등 CRUD에 관련된 메서드를 제공한다. Paging과 Sorting 기능은 따로 제공하지 않는다.

 

상속 관계

Repository -> CrudRepository

JPA Repository

JPA Repository는 PagingAndSortingRepository 인터페이스를 확장하며, PagingAndSortingRepository는 CRUD Repository 인터페이스를 확장하는 형태를 띠고 있다. 기본적인 CRUD 관련된 기능뿐 아니라 Paging, Sorting 기능을 추가적으로 제공한다. 또한 saveAllAndFlush(), deleteInBatch()등 JPA에 특화된 기능을 가진 메서드도 제공한다.

 

상속 관계

Repository -> CrudRepository -> PagingAndSortingRepository -> JpaRepository

CRUD? JPA? Repository

단순한 CRUD 기능만 사용을할 거면 CRUD Repository를 사용하면 된다. 하지만 Paging, Soting 기능 및 JPA 특화된 기능을 추가적으로 사용을 하고 싶다면 JPA Repository를 사용하면 된다. 

 

'개발공부' 카테고리의 다른 글

[ Java ] Boxed Type 비교  (0) 2023.03.19
[ Java Spring ] List 정렬하기  (0) 2022.12.19
DB 외부 접속 포트 포워딩 문제  (0) 2022.11.21
[ 인생퍼즐 ] TypeORM Transaction 사용  (0) 2022.09.04
객체 지향 설계 - SOLID(2)  (0) 2022.03.14