[Spring Data JPA] Repository 생성
2019. 10. 8. 00:43ㆍSPRING/Spring Data JPA
1. JPA Repository 생성
JPA를 사용하여 Repository를 만들 때는 JpaRepository<T, ID> 를 상속받는 Interface를 만들어 주기만 하면 된다.
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
public interface SchoolRepository extends JpaRepository<School, Long> {
}
이렇게 인터페이스를 만들어주고, 주입만 해주면 기본적인 crud 기능을 모두 사용할 수있다.
@Autowired
SchoolRepository schoolRepository;
@GetMapping("/school-list")
public Page<School> schoolList() {
Page<School> schools = schoolRepository.findAll(PageRequest.of(0, 10));
return schools;
}
schoolRepository.save()
schoolRepository.delete()
schoolRepository.count()
등등 이 외 다양한 기본적인 메서드가 JpaRepository와, JpaRepository가 상속받는 인터페이스들에 이미 만들어져 있다.
2. JpaRepository와 PagingAndSortingRepository, CrudRepository
세개의 인터페이스의 상속 관계는 그림과 같다.
CrudRepository가 조부모, PagingAndSortingRepository가 부모, JpaRepository가 자식의 관계이다.
우리가 만든 Repository는 JpaRepository를 상속받으며, 위 세개 인터페이스에 있는 메서드들을 모두 상속받게 된다.
'SPRING > Spring Data JPA' 카테고리의 다른 글
[Spring Data JPA] 프로젝트 세팅 (0) | 2020.05.05 |
---|---|
[Spring Data JPA] Cascade (0) | 2019.10.05 |
[Spring Data JPA] annotation(어노테이션) (0) | 2019.09.29 |