今天遇到了一个很奇怪的问题,在Eclipse中调试,运行项目一切正常,项目的所有编码都是统一的UTF-8。但是在单独部署到tomcat上的时候出现了中文乱码。
问题来源,这个是我用ckeditor编辑的页面提交到后台的
提交之后将数据保存到数据库。
解决方案
第一步:确保项目,jsp页面,数据库编码统一使用UTF-8。
第二步:修改tomcat的参数
- 第一处
tomcat安装路径/conf/server.xml
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
- 第二处
tomcat安装路径/bin/catalina.bat
加上这么一句话
set JAVA_OPTS=-Dfile.encoding=UTF-8
具体位置
已经没有乱码了
更新日志
2016年12月27日,今天下午被中文乱码折腾的四个人都加班到九点半。原来是自己写的工具类不够通用,在windows上会出现中文乱码。
背景
在自己电脑上运行项目没有乱码(windows8,eclipse),部署到服务器上(windows server 2008)上会出现读取配置文件中文乱码。
所以把新的代码同步到博客里。参考地址
如果你的程序也出现了配置文件中文乱码,依次检查文件的编码方式,其次检查服务器编码的配置,检查开发环境编码的配置,检查读取配置文件程序。
参考文献
http://www.cnblogs.com/sfeng1825/archive/2012/10/16/2726052.html