Spring Data JPA ( JpaRepository와 SimpleJpaRepository 관계 )

song yuheon·2023년 8월 29일
0

Spring

목록 보기
15/93
post-thumbnail

Spring Data JPA는 데이터 액세스 계층 작성을 단순화한다. 주로 사용하는 인터페이스 중 하나는 JpaRepository다. 이 인터페이스가 어떻게 동작하는지 알고자 할 때, SimpleJpaRepository에 주목하게 된다. 본 글에서는 두 요소 간의 관계와 Spring Data JPA의 작동 원리를 간단히 살펴본다.

JpaRepository 정의

JpaRepository는 Spring Data JPA의 핵심 인터페이스다. 이 인터페이스는 다음을 확장한다:
1. ListCrudRepository<T, ID>
2. ListPagingAndSortingRepository<T, ID>
3. QueryByExampleExecutor<T>

이 인터페이스들은 CRUD, 페이징 및 정렬, 예제 기반 쿼리 실행 메서드를 제공한다. 추가로, JpaRepository에는 JPA 특징을 활용한 특별한 메서드가 있다.

SimpleJpaRepository: 설명

SimpleJpaRepositoryJpaRepository 인터페이스의 기본 구현 클래스다. JpaRepository 인터페이스를 상속하는 리포지토리 인터페이스가 구현체를 필요로 할 때, Spring Data JPA는 SimpleJpaRepository를 활용하여 구현체를 동적으로 생성한다.

SimpleJpaRepository 사용 방법

일반적으로, 개발자가 직접 SimpleJpaRepository를 사용하거나 참조할 필요는 없다. 대신, JpaRepository 인터페이스를 상속하는 리포지토리 인터페이스 작성에 집중하면, Spring Data JPA가 나머지를 처리한다.

정리

Spring Data JPA는 데이터 액세스 계층 작성을 단순화한다. JpaRepository 사용 시 대부분의 데이터 액세스 작업을 쉽게 수행할 수 있다. 그러나, 내부적으로 SimpleJpaRepository가 실제 작업을 수행한다. 이 내부 동작을 이해하면, Spring Data JPA 활용이 더 쉬울 것이다.

profile
backend_Devloper

0개의 댓글