Spring Data JPA로 작업할 때 개발자는 기본 프레임워크에서 제공하는 내장 crud 및 finder 기능을 활용하는 경우가 많습니다. 그러나 파인더를 사용자 정의하거나 완전히 새로운 방법을 추가해야 하는 경우가 있을 수 있습니다. 이 기사에서는 주어진 Spring Data JPA 저장소 인터페이스에 대한 구현과 함께 사용자 정의 메소드를 추가하는 방법을 다룹니다.
제공된 예에서 AccountRepository 인터페이스는 매개변수화된 유형으로 JpaRepository를 확장합니다. Account 및 Long은 Long 유형의 기본 키를 사용하여 Account 엔터티에서 작동함을 나타냅니다. 또한 findByCustomer라는 사용자 정의 파인더 메소드는 사용자 정의 JPQL 쿼리를 실행할 수 있는 @Query 주석을 사용하여 정의됩니다.
저장소를 완전히 사용자 정의하려면 별도의 다음과 같은 인터페이스:
public interface AccountRepositoryCustom { public void customMethod(); }
이 인터페이스는 사용자 정의 메소드를 선언합니다. customMethod().
사용자 정의 인터페이스에 대한 구현 클래스가 제공되어야 합니다.
public class AccountRepositoryImpl implements AccountRepositoryCustom { @Autowired private AccountRepository accountRepository; public void customMethod() { // Implementation goes here } }
이 예에서 AccountRepository는 AccountRepositoryImpl 클래스, 다음과 같은 경우 customMethod() 구현 내에서 모든 저장소 메소드를 호출할 수 있습니다. 필요합니다.
마지막 단계에는 원래 AccountRepository 인터페이스에서 사용자 정의 인터페이스를 참조하는 작업이 포함됩니다.
public interface AccountRepository extends JpaRepository<Account, Long>, AccountRepositoryCustom {}
JpaRepository와 AccountRepositoryCustom을 모두 확장하여 AccountRepository 인터페이스는 내장 저장소 메소드와 AccountRepositoryCustom에 정의된 사용자 정의 메소드를 결합합니다. 인터페이스.
위 내용은 Spring Data JPA 리포지토리에 사용자 정의 메소드를 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!