您的位置:首页 > 运维架构 > Tomcat

Controller页面乱码的问题(修改tomcat默认的编码方式 )

2017-02-24 17:15 525 查看
最近在做项目自测的时候发现,每次输入查询条件为中文时,后端Controller层中请求的的VO中都是乱码,第一次遇到没有头绪,于是开始了各种排除法

一、在jsp中,页面的编码很明确:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>

二、在Controller层,打印出默认的编码格式,也是UTF-8,打印方式:

System.out.println(request.getCharacterEncoding());

三、查看IDE编码方式,毫无疑问都是UTF-8。

这我就奇了怪了,所有编码方式都一致,怎么可能还会有错,思前想后,从页面表单中提交的数据在Java程序里显示乱码,还有一种可能就是Tomcat的编码没有设置,tomcat的默认编码是iso8859-1,而程序的默认编码为UTF-8,这里出现了冲突,所以修改tomcat下的conf/server.xml文件。

找到如下代码:

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

这段代码规定了Tomcat监听HTTP请求的端口号等信息。


修改为如下情况

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

就可以啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐