
[Spring Data JPA] NamedQuery 사용하기
2022. 9. 19. 20:47
스프링/JPA
NamedQuery Spring Data Jpa는 기본적으로 findAll, saveAll과 같이 CRUD를 포함한 기본적인 공통 메서드를 인터페이스로 제공한다. 그런데 만약, 단순히 전체 값을 조회하거나 키 값을 기준으로 조회하는 것 외에 특성 조건에 따른 값을 조회하고자 한다면 어떻게 해야할까? 물론 엔티티 매니저가 제공하는 createQuery 메서드를 사용해 JPQL문으로 DB에서 값을 조회할 수 있다. 하지만 만약 JPQL문의 컬럼명이 잘못 되었어도 해당 메서드를 호출하기 전에는 에러가 발생하지 않아 알아차리기 힘들다. 메서드 이름으로 쿼리를 생성해주기도 하지만, 조건이 많아질수록 메서드 이름이 길어진다는 단점이 있다. (findByAgeLessThan, findByUserNameAndAgeGr..