Questa è la mia situazione, ho due di base di cui ho dato una semplice mappatura hibernate POJO:Hibernate nativo di query SQL recuperano le entità e le collezioni
Person
- PersonId
- Name
- Books
Book
- Code
- Description
My SQL query restituisce le righe che assomigliano a questo:
PERSONID NAME CODE DESCRIPTION
-------- ---------- ---- -----------
1 BEN 1234 BOOK 1
1 BEN 5678 BOOK 2
2 JOHN 9012 BOOK 3
la mia domanda di sospensione si presenta così:
session.createSQLQuery("select personid, name, code, description from person_books")
.addEntity("person", Person.class)
.addJoin("book", "person.books")
.list();
questo è per sezione: 18.1.3 della documentazione hibernate: http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/querysql.html#d0e17464
Quello che mi aspettavo di ottenere nella mia lista è 2 persona oggetti con gli oggetti del libro contenuti nella raccolta di libri:
List
|- Ben
| |- Book 1
| '- Book 2
'- John
'- Book 3
Quello che ho sto vedendo in realtà è questa:
List
|- Object[]
| |- Ben
| | |- Book 1
| | '- Book 2
| '- Book 1
|- Object[]
| |- Ben
| | |- Book 1
| | '- Book 2
| '- Book 2
'- Object[]
|- John
| '- Book 3
'- Book 3
qualcuno sa se è possibile ottenere ciò che voglio con questo metodo?
: correggere il collegamento. La risposta @ehrhardt risolve questo problema per Hibernate 5.1: http://stackoverflow.com/a/17210746/3405171 –