欧洲字符编码问题:Java + Jetty

European Character Encoding Issue: Java + Jetty

提问人:Nand 提问时间:8/21/2022 更新时间:8/21/2022 访问量:58

问:

我已经在Jetty 9.4.44版本上部署了Spring JDK8代码(REST服务){与JDK7及更低版本的Jetty相同问题},我遇到了欧洲字符的问题。这些在服务器上显示不正确。 数据在DB(sql server)上正确保存,但是当我们在服务器上看到它时,它不正确。 一切都在本地运行良好,但是一旦我们将代码部署到服务器,它就不起作用。 我们已经尝试了所有其他在技术上将数据显式转换为 UTF-8 的解决方案,此外,我们还在服务器上将所有编码标准更新为“UTF-8”。但没有任何帮助,它继续在服务器上显示错误的数据。

实际字符:ø | 通过服务器:Ã ̧ | 在接收端:

我猜服务器设置有问题,但不知道到底是什么原因造成的。有人可以帮忙吗? 谢谢!!

Java 编码 UTF-8 码头 ISO-8859-1

评论

0赞 Basil Bourque 8/21/2022
“sql server”是指 Microsoft SQL Server吗?如果是这样,请说出来,因为这在这里可能很重要。
1赞 Basil Bourque 8/21/2022
你的问题有点含糊不清。您应该使用绝对最少的代码(MCVE)重新创建问题。
0赞 JosefZ 8/21/2022
你面临一个 mojibake 案例(在 Python 中的例子,因为它的普遍可理解性):返回 .'ø'.encode( 'utf-8').decode( 'iso-8859-1')'ø'
0赞 AddeusExMachina 8/21/2022
尝试使用java -Dfile.encoding=UTF-8 -jar file.jar

答: 暂无答案