与货币符号相关的字符编码问题

时间:2012-08-10 08:32:22

标签: java spring tomcat encoding

我正在创建一个Web应用程序。我正在使用linux(fedora 16)来开发应用程序,所使用的技术是spring MVC。它是一个maven项目。当我在调试环境中运行应用程序时,应用程序工作正常并且显示正确的特殊字符。想要显示正确显示的货币符号磅(₤)。但是如果我在Windows机器上的tomcat 6.0.26或6.0.35上部署该应用程序,那么它就不能正确显示货币符号.Egit将英镑符号显示为“£”。所以任何人都可以了解这个问题。

2 个答案:

答案 0 :(得分:3)

在tomcat服务器的catalina.sh(catalina.bat)中添加这样的args;

   set JAVA_OPTS=-Djavax.servlet.request.encoding=UTF-8 -Dfile.encoding=UTF-8

并在server.xml中的Connector标记上设置 URIEncoding =“UTF-8”。看到这个;

   <Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" URIEncoding="UTF-8"/>

答案 1 :(得分:1)

你想要的是使用CharacterEncodingFilter。我建议您阅读链接指向的整个常见问题解答。