- 사용 예시
List<엔티티 클래스명> find + (엔티티 이름) + By + 변수 이름 (엔티티에 정의한 필드명)
( 엔티티의 이름은 생략이 가능합니다. )
이 기능은 엔티티의 필드명이 변경되면, 인터페이스에 정의한 메서드 이름도 꼭 함께 변경해야한다.
그렇지 않으면 애플리케이션 실행 시점에 오류가 발생한다.
(오류를 발견할수있는 큰 장점)
애플리케이션 실행 시점에 오류를 잡을수있다.
- 사용 예시 (@NameQuery의 지정한 name을 통해 쿼리를 재사용)
extend JpaRepository가 있는 클래스에서 (Spring Data Jpa) 사용findByusername은 위에있는 Spring Data Jpa의 쿼리 메서드 기능으로 메서드 이름으로 쿼리를 자동생성
Repository 메서드에 바로 쿼리를 지정할수있는 기능이 너무 막강해서 NamedQuery는 잘사용 X
- 사용 예시 (쿼리문을 메서드에 직접 정의한다)
- 네임드 쿼리처럼 애플리케이션 실행시점에 오류를 잡을수있다.
(네임드 쿼리로 따로 네임만 정하지 않은 것이다.)