项目通过tomcat部署到服务器,请求数据页面中文乱码问题

时间:2018-11-03
本文章向大家介绍将项目部署到服务器之后从页面接收的中文乱码 ,需要的朋友可以参考一下

问题描述: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';

转载博文:https://blog.csdn.net/yuanyuan214365/article/details/72454282

参考数据库配置百度经验: https://jingyan.baidu.com/album/2fb0ba40a4072900f2ec5f1c.html