我想使用Hibernate标准api构建一个包含来自2个表的记录的pojo。我正在构建一个带有第一张表中所需记录的ProjectionList,因为我在2个tabl之间没有双向关系,只有从第2个到第一个我已经创建了DetachedCriteria(子标准)和为所需记录做了预测。
我不知道如何将子标准添加到ProjectionList以获得所需记录的数组
Criteria criteria = currentSession.createCriteria(getClazz());
projectionList.add(Projections.property("name"), "name");
projectionList.add(Projections.property("str"), "street");
projectionList.add(Projections.property("nr"), "nr");
DetachedCriteria subcriteria=DetachedCriteria.forClass(B.class,"b");
subcriteria.createAlias("b.adress", "adr",CriteriaSpecification.LEFT_JOIN);
subcriteria.setProjection(Projections.property("adr.id"));
感谢!!!
答案 0 :(得分:0)
如果第一个类具有例如addressId
,则您的查询可以是这样的:
crteria.add(Subqueries.propertyIn("addressId", subcriteria));