我要求客户支持将用户输入的UTF-8数据(中文,日文等)保存到我们的应用程序数据库中并按原样显示。 为此,我更改了我的数据库字符集并更新了我的JDBC连接字符串以支持UTF-8数据处理。在此设置之后,我成功地将中文存储在我的数据库中,并将其显示在我的应用程序UI中。
但是在我的生产服务器上,我遇到了这个问题。我在生产系统上对此进行了调查,发现我在生产应用程序UI中输入的字符,例如“你叫什么名字”转换为“æ?¨?当我的生产应用程序收到请求时,ã®ã?³ã?ãã?ã?ã?ã?æ??é«ããããããã??虽然当我在本地机器上运行相同的东西时,我会收到字符,即如果我在ui中输入“你叫什么名字”,我得到“你叫什么名字“在我的家庭系统中的请求数据中。
我的生产中的应用程序部署在tomcat7和centos OS上,而我的本地机器(开发环境)是windows 7,tomcat 7。
这是由tomcat配置中的某些问题引起的吗?还是OS中的某些设置?
请说明这可能有什么问题?
答案 0 :(得分:0)
仔细检查Tomcat7的server.xml
是否URIEncoding
设置为UTF-8
。这应该可以解决问题。