W JPQL mogę odzyskać podmiotom przez:Jak odzyskać tylko niektóre pola jednostki w JPQL lub HQL? Jaki jest odpowiednik ResultSet w JPQL lub HQL?
query = entityManager.createQuery("select c from Category c");
List<Category> categories = query.getResultList();
Ale jeśli chcę pobrać identyfikator i nazwę pola (tylko) podmiotu kategoria, muszę coś podobnego obiektu ResultSet
, przez które mogę powiedz: rs.getString("name")
i rs.getString("id")
. Jak to zrobić przez JPQL
, bez pobierania całej encji?
Zasadniczo, aby uzyskać informacje dotyczące zapytań takich jak: select c.id,c.name from Category c
?
Widzę zapytania takie jak: "wybierz c.id, c.name z kategorii c" często w książkach JPA, ale nigdy nie mówią, jak pobrać wyniki. Jakikolwiek sposób to zrobić bez specyficznej hibernacji? – Daud
Z JPA będzie działać w ten sam sposób. Dodałem przykład do mojej odpowiedzi. Pamiętaj jednak, że jeśli na przykład wybierzesz tylko kolumnę z nazwą - otrzymasz listę, a nie listę
Jaka jest zmienna 'session' w tym kontekście? 'org.hibernate.Session' nie ma metody' createQuery', przynajmniej w wersji 4.3. –