GET url传参中文乱码问题的解决
0.1442018.12.21 12:00:34字数 184阅读 1,180
百度了很多种方式,最后的解决办法终于尝试出来了:
方法一
get方式提交的参数编码,只支持iso8859-1编码。因此,如果里面有中文。在后台就需要转换编码:
String userName = request.getParameter("userName");
userName = new String(userName.getBytes("iso8859-1"), "UTF-8");
注:如果你的页面编码集为utf-8,则按照此方法设置,如果是gbk,则将utf-8改成gbk即可(该方法我已经自己尝试过,可行)
方法二
修改tomcat的server.xml文件:
在如下代码中增加两个配置(URIEncoding="UTF-8" useBodyEncodingForURI="true"):
修改前:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="200000" redirectPort="8443" />
修改后:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="200000" redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true"/>
(嘻嘻,该方法待验证,不过可以一试,万一你的可以呢)