Java 集合的投影和嵌套投影

Java 集合的投影和嵌套投影,java,hibernate,collections,Java,Hibernate,Collections,第一部分是如何创建项目集合 我们可以对集合元素应用投影吗? 例如 但它给了我一个错误,说明无法解析用户的属性:“Address.City” 是否有任何用于投影集合元素和嵌套投影的规定???Hibernate区分大小写。因此,使用Address.City,而不是Address.City。如果无效,请尝试使用alias,如: DetachedCriteria criteria = DetachedCriteria.forClass(User.class); criteria.createAlias(

第一部分是如何创建项目集合

我们可以对集合元素应用投影吗? 例如

但它给了我一个错误,说明无法解析用户的属性:“Address.City”


是否有任何用于投影集合元素和嵌套投影的规定???

Hibernate区分大小写。因此,使用Address.City,而不是Address.City。如果无效,请尝试使用alias,如:

DetachedCriteria criteria = DetachedCriteria.forClass(User.class);
criteria.createAlias("address", "addAlias");
criteria.setProjection(Projections.property("addAlias.city"));

Hibernate区分大小写。因此,使用Address.City,而不是Address.City。如果无效,请尝试使用alias,如:

DetachedCriteria criteria = DetachedCriteria.forClass(User.class);
criteria.createAlias("address", "addAlias");
criteria.setProjection(Projections.property("addAlias.city"));

这应该以同样的方式工作(为了确保它受到支持,请查看您的hibernate版本的hibernate参考手册)。请注意,在您的示例中也存在相同的“case”问题:对Projections.property使用“address”,而不是“address”。
类用户{private address Map;}
如何在映射上应用投影,应用这些标准时,我得到的是空对象,它们应该以相同的方式工作(为了确保它受支持,请查看hibernate版本的hibernate参考手册)。请注意,在您的示例中存在相同的“案例”问题:Projections.property使用“address”,而不是“address”。
class User{private address Map;}
如何在地图上应用投影,当应用这些条件时,我得到的是空对象
DetachedCriteria criteria = DetachedCriteria.forClass(User.class);
criteria.createAlias("address", "addAlias");
criteria.setProjection(Projections.property("addAlias.city"));