使用this回复this相关帖子, ehrhardt发布的技巧很好。
但是,如果我必须加入多个实体,我该怎么做?例如:
List<Person> peopleWithBooks = session.createSQLQuery(
"select {p.*}, {b.*}, {m.*} from person p, book b, magazine m where <complicated join>")
.addEntity("p", Person.class)
.addJoin("b", "p.books")
.addJoin("m", "p.magazines")
.addEntity("p", Person.class)
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY)
.list();
Hibernate会聚合第一个连接,但不聚合第二个连接(杂志实体未分组)。
有任何技巧或只有一个相关实体加入是有限制的吗? 如果我必须加入具有子实体的实体? (我的目标是只用一个自定义查询检索所有选定的数据)