Hibernate Oracle和字符编码

Mar*_*ark 5 oracle encoding hibernate

我的测试环境没有在数据库中持久保存商标字符"™",我遇到了问题.当我输入表单数据,然后提交它,我可以看到在服务器端,请求具有正确编码的™字符,但是当调用hibernate的"saveOrUpdate()"方法被调用时,数据在表格显示为颠倒的问号.

我使用SqlDeveloper检查表,我可以通过直接粘贴到行然后提交,手动将字符更改为™,并且它可以正常工作.

所以我假设休眠的持久化方法不能正常工作.

我在这里不知所措,真的,我只是不知道该尝试什么,我已经设定了:

<property name="connection.useUnicode">true</property>
<property name="connection.characterEncoding">utf-8</property>
Run Code Online (Sandbox Code Playgroud)

配置文件中的属性,没有运气.

我在表中的列是NVARCHAR2(400 CHAR)(虽然它们最初只是VARCHAR2开头,但我在调试此问题时更改了它们).

非常感谢任何帮助.

标记

Mar*_*ark 5

好的,事实证明我需要做的是将defaultNChar连接属性设置为true.

我是通过Tomcat中我的应用程序的上下文文件完成的.

启发我的文章就在这里.