JDOQL
🔎 JDOQL이란?
정의
JDOQL(Java Data Objects Query Language)은 JDO에서 객체를 조회하기 위해 사용하는 쿼리 언어이다. 객체 모델을 기준으로 조건을 표현한다는 점에서 JPA의 JPQL과 비슷한 위치에 있다.
🧩 특징
- 객체 중심으로 조회한다.
- 저장소 구조보다 Java 클래스 모델에 가깝게 작성한다.
- JDO와 함께 사용한다.
- 조건식과 정렬, 범위 조회를 표현할 수 있다.
포인트
JDOQL은 SQL을 직접 쓰는 방식이 아니라 객체 모델을 기준으로 질의하는 방식이다.
🛠️ 기본 사용 흐름
- JDO 객체를 조회할 쿼리를 작성한다.
PersistenceManager를 통해 쿼리를 실행한다.- 결과를 객체 형태로 받는다.
🧪 예시
Query query = pm.newQuery(User.class, "age > :minAge");
Collection<User> users = (Collection<User>) query.execute(20);
Query query = pm.newQuery(User.class);
query.setFilter("name ** :name");
query.setOrdering("createdAt desc");
⚖️ JDOQL과 JPQL
| 항목 | JDOQL | JPQL |
|---|---|---|
| 대상 | JDO 객체 | JPA 엔티티 |
| 목적 | 객체 조회 | 엔티티 조회 |
| 사용 위치 | JDO | JPA |
| 표현 방식 | 객체 모델 기준 | 엔티티 모델 기준 |
정리
JDOQL은 **JDO 전용 쿼리 언어==로 이해하면 된다. JPA를 사용한다면 보통 JPQL을 더 자주 만나게 된다.
✅ 언제 보는가?
- JDO 기반 프로젝트에서 객체를 조회할 때
- 객체 중심 질의를 이해하고 싶을 때
- JDO와 JPQL의 대응 관계를 비교할 때
댓글남기기