gpt4 book ai didi

java - hibernate/投影中的 Ucase 等价物?

转载 作者:行者123 更新时间:2023-11-30 22:13:28 25 4
gpt4 key购买 nike

我一直在大量搜索以找到与简单 SQL 中的 Ucase/Lcase 函数等效的 hibernate/投影代码(/函数)。这种东西真的存在吗?在进一步拖延之前,我将解释我的情况。

我有两个表(一对一)- StudentBean 和 AddressBean。我在 AddressBean 中使用一个简单的对象(Studentbean)嵌入机制来跟踪它们的关系。我在我的 AddressBean Manager 类中使用以下方法从数据库中获取整个记录(从 2 个表连接)。

public List getAllDetails()
{
Criteria c = sessionFactory.getCurrentSession().createCriteria(AddressBean.class);
c.createAlias("studid", "student");
c.setProjection(Projections.projectionList()
.add(Projections.property((String)"student.studid"), "studid")
.add(Projections.property((String)"student.rollno"), "rollno")
.add(Projections.property((String)"student.name"), "name")
.add(Projections.property((String)"student.phone"), "phone")
.add(Projections.property((String)"address"), "address")
.add(Projections.property((String)"place"), "place")
.add(Projections.property((String)"city"), "city"));
c.addOrder(Order.asc("city"));
c.setResultTransformer((ResultTransformer)Transformers.ALIAS_TO_ENTITY_MAP);
return c.list();
}

返回的列表根据“城市”列值正确排序。现在我的要求是将城市列值转换为纯“大写”,就像我们简单地转换为 "SELECT UCASE(City) AS Customer, CityFROM Customers;”Simple SQL 中。

这可能吗?

最佳答案

@Column(name = "City")
@ColumnTransformer(read = "UPPER(City)")
private String city;

如上所述更改实体类的 city 属性并尝试...

关于java - hibernate/投影中的 Ucase 等价物?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39264071/

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