首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Tomcat上被忽略的中文乱码有关问题GET请求

2012-09-03 
Tomcat下被忽略的中文乱码问题GET请求在web开发下一直使用的filter进行转码的。request.setCharacterEncodi

Tomcat下被忽略的中文乱码问题GET请求
在web开发下一直使用的filter进行转码的。
request.setCharacterEncoding("utf-8");
不过今天我想在传递url?role=角色将中文作为附带信息进行下一页面的显示。
发现传递之后一直是乱码。
必须用new String(request.getParameter("role").getBytes("iso-8859-1"),"utf-8")
进行转换。
原来tomcat在处理get和post请求的时候处理方式不同。
POST请求是将参数存放在请求数据包的消息体中
所以使用request.setCharacterEncoding("utf-8");可以处理
但是GET请求是将参数存放在url中,此时setCharacterEncoding就不起作用了,此时我们需要采用手写代码进行转码。
当然我们也可以修改tomcat配置文件来处理get请求的转码

conf\server.xml
<Connector port="80" protocol="HTTP/1.1"    
           connectionTimeout="20000"    
           redirectPort="8443"    
           URIEncoding="UTF-8"   
/>


1 楼 zhujinguo 2010-12-29   好基础啊! 2 楼 llying 2011-01-03   有些问题只有碰到了才会发觉~!

热点排行