용어 뜻:
출처:
Java Persistence Query Language
EJBQL(Enterprise Java Beans Query Language)와 비슷하지만 JPQL은
Bulk Update/Delete, Subquery, Native Query(DB-Specific SQL) 등을 지원한다.
Query API
Query Object는 EntityManager의 CreateQuery()를 이용해 생성한다.
setParameter(), setMaxResults(), setFirstResult()
getResultList(), getSingleResult(), executeUpdate()
Dynamic Query
동적으로 생성하여 사용하는 Query
1
2
3
|
Query query = em.createQuery("select c from Customer c where name=:name");
query.setParameter("name", name);
List list = query.getResultList();;
| cs |
Static Query
Entity Class에 선언해두고 필요할 때 마다 불러 쓰는 Query
@NamedQuery와 @NamedNativeQuery가 있다.
1
2
3
4
5
6
7
|
@Entity
@NamedQuery(name="findCustomerByName", query="select c form Customer c where c.name=:name")
public class Customer { //.... }
Query query = em.createNamedQuery("findCustomerByName");
query.setParameter("name", name);
List list = query.getResultList();
| cs |
EJBQL의 확장
Projection list
Explicit Joins
Subqueries
Group by, Having
Exists, All, Some/Any
Bulk Update, Delete
Javajigi.net, 2016-10-25, http://www.javajigi.net/pages/viewpage.action?pageId=5924
댓글
댓글 쓰기