Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/UserGuide/JPA/Basic JPA Development/Querying/Native
< EclipseLink | UserGuide | JPA | Basic JPA Development | Querying
EclipseLink Native Query
In addition to JPQL, EclipseLink rich native DatabaseQuery and Expression criteria API.
Key API {{{apis}}}
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.expressions.*; 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();
Note: The JpaEntityManager API was added in EclipseLink 1.1.
In EclipseLink 1.0, the JpaQuery method setDatabaseQuery() could be used.