Читать книгу Desarrollo de aplicaciones web con Jakarta EE - César Francisco Castillo - Страница 26

2.6.1 Estructura y definición de una consulta

Оглавление

JPQL se basa en el uso de cadenas para definir las consultas, y su sintaxis es muy similar a la de SQL. Por ejemplo, para recuperar todos los registros de una tabla llamada personas en SQL, tendríamos lo siguiente:

SELECT * FROM personas;

Su equivalente en JPQL:

SELECT p FROM Persona p;

Con esta cadena de texto obtenemos todas las instancias de la clase Persona. La letra p es una variable que itera sobre los objetos recuperados. Para poder utilizarla dentro de la aplicación, debemos crear una cadena de texto y asignarla a una variable de tipo String.

String consulta = “SELECT p FROM Persona p”;

Luego, se debe pasar como argumento al método createQuery() del EntityManager.

Query query = em.createQuery(consulta);

Por último, para retornar el listado, debemos invocar el método getResultList() de la interface Query.

return query.getResultList();

Esto retornará una lista cuyo tipo de dato es Object. Si queremos que sea de tipo Persona o de otro tipo, se deberá realizar la conversión correspondiente mediante el casteo.

return (Persona) query.getResultList();

Desarrollo de aplicaciones web con Jakarta EE

Подняться наверх