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