oracle数据库中的波斯字符编码

mah*_*imi 6 oracle unicode weblogic utf-8 farsi

我在将(“?”或“?”)等波斯字符保存到 oracle 数据库时遇到问题。我从客户端收到正确的编码,但是当我将相关记录插入数据库时​​,它将以这样的阿拉伯语编码保存(“?”)。

我的应用程序的规格是:

  • Linux 上的 WebLogic 应用服务器 12c
  • Oracle 11g(瘦驱动)
  • OpenJPA 2.2.2

我将以下属性设置到 WebLogic 设置文件中,但它不起作用。

export NLS_LANG=AMERICAN_AMERICA.AR8MSWIN1256
export NLS_LANG=AMERICAN_AMERICA.UTF8
-Dfile.encoding=UTF-8
Run Code Online (Sandbox Code Playgroud)

mah*_*imi 3

通过将以下属性添加到 weblogic 设置(setDomainEnv.sh 文件的“JAVA_OPTIONS”部分)中,我的问题已通过此链接的帮助得到解决

-Doracle.jdbc.defaultNChar=true 
-Doracle.jdbc.convertNcharLiterals=true
Run Code Online (Sandbox Code Playgroud)