따라서 JPQL은 이식 가능하며 특정 데이터 스토어에 제한되지 않습니다.
JPQL은 Enterprise JavaBeans 조회 언어인 EJB QL의 확장이며, SQL의 구문 및 단순 조회 시맨틱을 객체 지향 표현식 언어의 표현과 결합하도록 디자인되었습니다.
EntityManager 인터페이스에서 제공된 메소드를 통해 조회 인스턴스가 작성됩니다.
JPQL은 작업 중에 작성된 동적 조회 및 이름 지정된 조회와 같은 두 가지 유형의 조회를 정의합니다.
이름 지정된 조회는 동일한 조회가 여러 번 호출되는 컨텍스트에 사용됩니다. 이러한 조회는 한 번 평가되었기 때문에 향상된 코드 재사용 가능성, 수월한 유지보수 및 잠재적으로 향상된 성능과 같은 주요 이점을 가지고 있습니다.
이름 지정된 조회는 @NamedQuery 어노테이션을 사용하여 정의됩니다. 이름 속성이 이름 지정된 조회를 고유하게 식별하는 데 사용되는 반면, 조회 속성은 조회를 정의합니다.