【问题标题】:Special characted incorrectly stored in POSTGRES DB特殊字符错误地存储在 POSTGRES DB 中
【发布时间】:2015-02-14 17:00:32
【问题描述】:

项目基于 Postgres 数据库版本 9.3.5, Java 7,org.hibernate hibernate-core 3.6.10.Final

问题: 我有两个运行相同 Web 应用程序的独立系统。在其中一个系统上,所有内容都正确保存在发送到 Postgres 数据库的其他字符串上,其中包含 unicode 字符,并且像 'nnés' 这样的文本被保存为 'nns' 或 'nnés-2' 。我注意到这两个系统之间的唯一区别是在执行 SHOW client_encoding 时,一个显示 UNICODE,另一个显示 UTF8 作为客户端编码;在控制台中。一个正在运行的 unicode 可以正常工作,而另一个则不能。

我的问题是 客户端编码是否有可能以某种方式卡住/硬编码,并且没有根据真实的客户端编码选择它,这意味着以 unicode 发送的字符串没有转换为 UTF8,但只是保留了下来。

这种行为的原因是什么。

【问题讨论】:

  • Unicode 甚至不是一个开始的编码...
  • 始终在任何地方使用 UTF8。您当前的问题表明某些客户端使用了不同的编码。

标签: java hibernate postgresql encoding character-encoding


【解决方案1】:

试试request.setCharacterEncoding("UTF-8");

【讨论】:

  • 当系统使用相同的字符串和浏览器进行测试时,为什么请求编码很重要?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-26
  • 2012-04-24
  • 1970-01-01
  • 1970-01-01
  • 2015-06-14
  • 1970-01-01
  • 2021-06-29
相关资源
最近更新 更多