Hibernate 5.2.5.Final createSQLQuery() 方法已弃用

2022-09-03 12:21:54

我正在使用Hibernate中的方法在我的数据库中进行插入操作。createSQL()

我想做的是描述一个自定义SQL语句,以便我可以将函数应用于表上的字段。这就是为什么我不能简单地使用这种方法。MD5()save(Object)

我从Eclipse IDE收到一个警告,上面写着:The method createSQLQuery(String) from the type QueryProducer is deprecated.

尽管如此,插入操作仍按预期执行。

我在项目上使用的Hibernate的当前版本是5.2.5.Final。

所以,问题是:在这个版本的Hibernate中,有没有另一种方法可以实现相同的目标,以摆脱那个烦人的警告?

我也知道添加注释可以解决问题,但我不太确定将来是否会导致任何问题。@SuppressWarnings("deprecation")

值得一提的是,我是一个使用这个框架的乞丐。


答案 1

已弃用的QueryProducer.createSQL(String)的javadoc描述了要使用的内容:

荒废的。(从 5.2 开始)改为
为给定的 SQL 查询字符串创建实例。createNativeQuery(String)NativeQuery

只是添加通常不是一个好主意,因为将来可能会遇到问题;即,当您移动到较新的Hibernate版本时,现在已弃用的方法将被删除。@SuppressWarnings("deprecation")


答案 2

推荐