Hibernate Query和国际字符

时间:2014-01-23 12:43:02

标签: sql-server hibernate encoding internationalization

我在Java SE应用程序中使用hibernate来查询数据库中的一些数据。但是我需要在where子句中使用波兰字符,例如:

where province='MAŁOPOLSKA' 

但结果集为空。

使用 SQL Server 时,我只需要在'Małopolska'字符串之前添加N个字母。 我试图找到一个解决方案,我发现的唯一一件就是将这些行放入配置文件

<property name="hibernate.connection.CharSet">UTF-8</property>
<property name="hibernate.connection.characterEncoding">UTF-8</property>
<property name="hibernate.connection.useUnicode">true</property>

但它没有改变任何东西,即我得到空的结果集。

任何提示都将不胜感激。

1 个答案:

答案 0 :(得分:0)

解决。 我用参数替换了简单的'MAŁOPOLSKA'字符串,它工作正常。例如:

where province = :provName
q.setParameter("provName", 'MAŁOPOLSKA');