En JPQL, que puede recuperar entidades por:¿Cómo recuperar solo ciertos campos de una entidad en JPQL o HQL? ¿Cuál es el equivalente de ResultSet en JPQL o HQL?
query = entityManager.createQuery("select c from Category c");
List<Category> categories = query.getResultList();
Pero, si quiero recuperar los campos id y name (solamente) de la entidad Categoría, necesito algo así como el objeto ResultSet
, a través del cual pueda decir: rs.getString("name")
y rs.getString("id")
. ¿Cómo hacer esto a través del JPQL
, sin recuperar toda la entidad?
Básicamente, una manera de recuperar información de una consulta como: select c.id,c.name from Category c
?
veo consultas como: "seleccione c.id, c.name de la categoría c" a menudo en los libros de la APP, pero nunca tell u cómo recuperar los resultados. ¿Alguna forma de hacerlo sin ser específico de Hibernate? – Daud
Con JPA funcionará de la misma manera. Agregué un ejemplo a mi respuesta. Pero tenga en cuenta que si, por ejemplo, selecciona solo la columna de nombre, obtendrá la Lista, no la Lista
¿Qué es la variable 'session' en este contexto? 'org.hibernate.Session' no tiene un método' createQuery', al menos en 4.3. –