1. 기본개념
2. 어노테이션에 정의하여 사용
@Entity
@NamedQuery(
name = "Member.findByUsername",
query = "select m from Member m where m.username = :username"
)
public class Member {
//필드 정의
}
//namedQuery
List<Member> resultList = em.createNamedQuery("Member.findByUsername")
.setParameter("username", "회원1")
.getResultList();
for (Member member : resultList) {
System.out.println("member = " + member);
}
3. XML에 정의하여 사용
4. 설정
[참고] 📌 spring data jpa 사용시 @Query 어노테이션을 통해 쉽게 사용 가능
https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods
- 이름 없는 named Query라고 부름
- 인터페이스 메소드 위에 @Query 어노테이션 추가하여 작성하면, JPA가 파싱하여 named Query로 등록
- 애플리케이션 로딩 시점에 오류 발견 가능