EclipseLink/Examples/JPA/DatabaseQuery
< EclipseLink | Examples | JPA
Revision as of 14:11, 12 March 2009 by James.sutherland.oracle.com (Talk | contribs)
In addition to JPQL, EclipseLink defines a rich DatabaseQuery and Expression criteria API.
See:
- org.eclipse.persistence.queries
- org.eclipse.persistence.expressions
- Queries in the EclipseLink User's Guide
Using JpaEntityManager createQuery() API
import javax.persistence.Query; import org.eclipse.persistence.expression.*; import org.eclipse.persistence.queries.ReadAllQuery; ExpressionBuilder builder = new ExpressionBuilder(); ReadAllQuery databaseQuery = new ReadAllQuery(Employee.class, builder); databaseQuery.setSelectionCriteria(builder.get("firstName").like("B%")); databaseQuery.addOrdering(builder.get("firstName").toUpperCase()); Query query = ((JpaEntityManager)entityManager.getDelegate()).createQuery(databaseQuery); List result = query.getResultList();
This JpaEntityManager API was added in EclipseLink 1.1, in EclipseLink 1.0, the JpaQuery method setDatabaseQuery() could be used.