将项目部署到服务器之后从页面接收的中文乱码
问题描述:1、将项目部署到服务器之后从页面接收的中文乱码
2、数据库中原有的数据都能正常显示
产生原因:没有对tomcat服务器和mysql进行配置更改
解决流程:
一、 修改tomcat配置
更改两个文件的配置
1.server.xml(添加红色部分)
<connector port="8080" protocol="http/1.1" connectiontimeout="20000" redirectport="8443"
uriencoding="utf-8" />
<connector port="8009" protocol="ajp/1.3" redirectport="8443" uriencoding="utf-8"/>
2.web.xml
<filter>
<filter-name>setcharacterencodingfilter</filter-name>
<filter-class>org.apache.catalina.filters.setcharacterencodingfilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<async-supported>true</async-supported>
</filter>
默认tomcat7中上面这段代码在注释中,把它注释去掉。
重启tomcat使配置生效。
二、 mysql配置
修改数据库的配置文件my.cnf文件,此文件如果通过rpm安装一般在/etc/目录下,具体修改成的样式如下图所示
修改完成后,我们保存配置的修改,然后执行命令service mysqld restart。重新启动数据库。
进入mysql,使用status查看数据库信息,执行命令show variables like 'character%'; 查看更改后的编码格式,执行 use 数据库名;然后执行show create database 数据库名; show create table 数据表名;查看对应的数据库和数据表编码
修改此数据库的编码方式为utf8(默认是latin1)
mysql> alter database 数据库名
character set utf8;
set names 'utf8';
转载博文:
参考数据库配置百度经验:
上一篇: 全面屏完美解锁方案 屏幕指纹手机推荐
下一篇: Linux下更新git版本