사용자 정의 레포지토리 Spring Data JPA만을 사용해 Repository interface를 만들어 사용하게 되면 구현체는 Spring이 생성하므로 편리하지만 몇 가지 기능을 직접 구현하고 싶을 때는 개발자가 interface에 상속받는 `JpaRepository`의 모든 기능을 구현해주어야 하는 애로사항이 생긴다. JPA를 직접 사용하고 싶거나, 스프링 JDBC Temlate을 직접 사용하고 싶거나 MyBatis를 사용하거나 데이터베이스 커넥션을 직접 사용하는 등의 상황에서 구현체를 직접 만들고 싶을 때 사용자 정의 레포지토리를 사용할 수 있다. 사용자 정의 레포지토리 작성 사용자 정의 레포지토리를 만들기 위해서는 다음과 같은 구조로 작성해야한다. 먼저, 사용자 정의 메서드 작성을 위한 int..