遇到问题,写下自己的解决办法,如有错误,还望指点。
Tomcat
tomcat本身受部署平台(window、linxu)编码的影响,一般window中文版本的编码都是GBK,linux系统编码为UTF-8编码,所以在中文在这两个版本的tomcat服务传输会有乱码的问题。
乱码解决分为自身平台内部乱码和多服务调用之间中文乱码两种情况。
第一种情况:平台内部乱码
GET方式
这种方式的乱码一般都是修改tomcat中server.xml中的connector,添加URIEncoding=”UTF-8”
POST方式
如果使用JSP,则把页面的编码都改为UTF-8;
如果使用Servlet,则使用setCharaterEncoding();设置为UTF-8;
保证前后台编码一致即可解决。
第二种情况:跨服务跨应用调用乱码
这种情况等待我研究,如何在不修改发布服务的情况下解决。
暂时只能保持发布服务的编码一致,建议统一使用UTF-8编码。
修改jvm运行的编码格式
1.window
修改catalina.bat,添加
set JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=utf-8
2.Linux<