gpt4 book ai didi

java - 如何在整数数据类型的 hibernate 分离条件中使用 LIKE?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:20:45 28 4
gpt4 key购买 nike

我必须执行 Restrictions.like("sequenceNo", "%"+ Integer.valueOf(sequenceNo.trim()) + "%")

字段sequenceNo是整数类型,但是sequenceNo参数值为字符串。我的问题是出现异常 java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer。由于某些原因,我真的必须让我的参数成为字符串数据类型。当我在 SQL 中尝试使用它来喜欢一个整数时,它起作用了。

请帮忙。谢谢。

最佳答案

您不能为此目的添加 Criteria 的属性限制,因为在获取期间,指定的属性值将根据实体类中指定的“字段类型”进行转换。

但是,解决方案是使用 SQLRestriction of criteria 来绕过转换。我已经测试过,这有效。

yourDetachedCriteriaObj.add(Restrictions.sqlRestriction(" sequenceNo LIKE '%"+yourSequenceNumToSearch+"%' "));

要获取列表,您需要执行以下操作

List ls = yourDetachedCriteriaObj.getExecutableCriteria(yourSession).list();
// iterate over list or do whatever.

关于java - 如何在整数数据类型的 hibernate 分离条件中使用 LIKE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15514721/

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