JPOQL
🔎 JPOQL이란?
정의
JPOQL은 JDO 계열에서 객체를 기준으로 조회하는 쿼리 문맥을 설명할 때 사용된 문서이다. 실무와 표준 문서에서는 보통 JDOQL이라는 용어가 더 일반적이다.
JPOQL은 이름상으로는 Java Persistent Object Query Language로 해석될 수 있지만, 현재 볼트에서는 JDO 객체 질의 개념을 설명하는 문서로 정리한다.
[!important] 참고 일반적으로 JDO에서 사용하는 표준 쿼리 언어는
JDOQL이다. 따라서 이 문서는JDOQL과 거의 같은 맥락으로 이해하면 된다.
🧩 특징
- SQL보다 객체 모델에 가깝게 조회를 표현한다.
- JDO 객체와 필드를 기준으로 조건을 작성한다.
- JDOQL과 비슷한 문맥으로 동작한다.
🛠️ 기본 예시
SELECT FROM com.example.User
WHERE this.age > 20 && this.active == true
this는 현재 조회 대상 객체를 뜻한다.- 필드는
this.fieldName형태로 사용할 수 있다.
🔍 자주 사용하는 조건 표현
| 함수 | 설명 |
|---|---|
startsWith("abc") |
문자열 시작값 확인 |
endsWith("xyz") |
문자열 끝값 확인 |
matches(...) |
정규식 일치 여부 확인 |
contains(...) |
포함 여부 확인 |
⚖️ JPOQL, JDOQL, JPQL
| 항목 | JPOQL | JDOQL | JPQL |
|---|---|---|---|
| 기준 | 객체 중심 조회 문맥 | JDO 전용 객체 조회 언어 | JPA 엔티티 조회 언어 |
| 대상 | JDO 객체 | JDO 객체 | JPA 엔티티 |
| 사용 맥락 | 문서상 설명용 | 표준 용어로 더 일반적 | JPA 표준 |
정리
JPOQL은 현재 문서상 표현으로 보고, 실제 학습과 실무에서는 JDOQL을 중심으로 이해하는 것이 더 정확하다.
댓글남기기