gpt4 book ai didi

java - 集合投影和嵌套投影

转载 作者:太空宇宙 更新时间:2023-11-04 08:53:46 25 4
gpt4 key购买 nike

第一部分是如何投影集合?

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

    class User{
private address List<Address>;
}

class Address{
private String city;
private String state;
}

现在我可以只加载 User 类的地址属性吗?使用如下代码:

criteria.setProjection(Projections.property("地址"));

但它总是返回 null,即使对象确实设置了地址字段。有什么不同的方式来投影集合项目吗?

第二部分:嵌套投影。考虑与上面所示相同的模型,但不是有一个 Address 集合,而是有一个元素。现在,如果我只想加载属于 User 类一部分的 Address 的“city”属性,该怎么办?

我尝试这样做:

Projections.property("Address.City")

但它给了我错误,指出无法解析属性:用户的“Address.City”。

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

最佳答案

Hibernate 区分大小写。因此,请使用 address.city,而不是 Address.Cityity。如果它不起作用,请尝试使用别名,例如:

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

关于java - 集合投影和嵌套投影,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2788029/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com