Tomcat 那些事儿
tomcat接收中文参数乱码问题的总结
其实是一个相当老的问题,勾勾可以查到很多,昨天不小心又碰到了,总结一下.
1 一般我们的页面都用UTF-8编码,IE里面也是默认用UTF-8传递参数.
2 参数中包含的中文提交时都转为编码形式,如果是javascript提交可以用...+encodeURI(param)的方式提交参数,地址栏显示结果形如:xxxx&path=%E9%80%81%E5%A4%84%E7%90%86
3 一般推荐的方式是修改tomcat/conf/server.xml,在如下小节中加入URIEncoding="UTF-8"
<Connector port="8080" maxThreads="150" minSpareThreads="25"
maxSpareThreads="75" enableLookups="false" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="UTF-8" / >
4 如果不采用步骤3,可以在接收时转化为utf-8,这样每个参数都必须转换
path=new String(path.getBytes("ISO-8859-1"), "UTF-8");
注意: 如果使用Mysql,还要把Mysql的编码问题解决,见Mysql那些事儿
页:
[1]