これが私の状況です。単純な休止状態のマッピングを指定した 2 つの基本的な POJO があります。
Person
- PersonId
- Name
- Books
Book
- Code
- Description
私のSQLクエリは、次のような行を返します:
PERSONID NAME CODE DESCRIPTION
-------- ---------- ---- -----------
1 BEN 1234 BOOK 1
1 BEN 5678 BOOK 2
2 JOHN 9012 BOOK 3
私の休止状態のクエリは次のようになります:
session.createSQLQuery("select personid, name, code, description from person_books")
.addEntity("person", Person.class)
.addJoin("book", "person.books")
.list();
これはセクションごとです: 休止状態のドキュメントの 18.1.3: http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/querysql.html#d0e17464
私のリストに期待するのは、 book のコレクションに含まれる book オブジェクトを持つ 2 つの Person オブジェクトです。
List
|- Ben
| |- Book 1
| '- Book 2
'- John
'- Book 3
私が実際に見ているのはこれです:
List
|- Object[]
| |- Ben
| | |- Book 1
| | '- Book 2
| '- Book 1
|- Object[]
| |- Ben
| | |- Book 1
| | '- Book 2
| '- Book 2
'- Object[]
|- John
| '- Book 3
'- Book 3
この方法を使用して必要なものを取得できるかどうかは誰にもわかりませんか?