nJPA disponibiliza uma query API semelhante a
uma query SQL chamada
Java
Persistence Query Language (JPQL). O objeto Query pode ser obtido a partir do EntityManager usando o factory method crateQuery.
nUma query pode ser estática ou dinâmica. Uma query
estática pode ser definida através de uma anotação ou dentro de uma arquivo XML pela criação de uma query nomeada (named query).
n@NamedQuery( name= "findCourses",
n query=“select
c FROM Course c WHERE c.name LIKE :courseName")
n........
nEntityManagerFactory emf = Persistence.createEntityManagerFactory("Tutorial");
nEntityManager em =
emf.createEntityManager();
n........
nQuery query = em.createNamedQuery("findCourses");
ncourses
= query.setParameter("courseName",
n...... "Java
Programming").getResultList();