2015-04-17 3 views
1

У меня есть этот запрос, написанный на Spring Data JPA:JPA Native Query отображение

@Query(value = "SELECT x,y, sum(x,y) FROM table 
    WHERE x = ?1 groupby x,y ", nativeQuery = true) 

и у меня есть класс сущностей, как

@Entity 
class abc { 
    int x; 
    int y; 
//setter and getter 
} 

Как сопоставить результат этого запроса к POJO или Entity класс??

PS: Это работает:

@Query(value = "SELECT * FROM table 
    WHERE x = ?1 ", nativeQuery = true) 
+0

Что именно является проблема? Вы получаете исключение? Неправильный результат? – Mureinik

ответ

1

Вы должны отобразить результат запроса к POJO созданного путем передачи его .class в запросе. Это можно сделать, вызвав createNativeQuery() в менеджере сущностей. например, List<abc> myList = (List<abc>)em.createNativeQuery("your query here", abc.class). abc.java должны иметь следующие две вещи

    1. имена атрибутов, соответствующих именам столбцов в выбранном пункте запроса и
    2. конструктор по умолчанию
Смежные вопросы