有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java调用setString时,Hibernate是否可以避免使用单引号?

我使用的是Hibernate,我在HBM文件中配置了一个SQL查询,只有一个参数。我想给这个参数设置一些类似表达式的值,但是Hibernate用单引号括住了这个值

例如:

<sql-query name="myQuery">
    select A,B from table where A in (:words)
</sql-query>

hibernateSession.getNamedQuery("myQuery").setString("words", "soundex('someWord1'), soundex('someWord2')");

// As a result:

select A,B from table where A in ('soundex('someWord1'), soundex('someWord2')')

所以它不起作用了!因此,我希望得到以下信息:

hibernateSession.getNamedQuery("myQuery").setString("words", "soundex('someWord1'), soundex('someWord2')");
=> select A,B from table where A in (soundex('someWord1'), soundex('someWord2'))

是否可以使用hbm文件中配置的SQL查询

谢谢


共 (0) 个答案