现在的位置: 首页 > 综合 > 正文

Tomcat中文乱码问题的解决方法

2013年08月21日 ⁄ 综合 ⁄ 共 781字 ⁄ 字号 评论关闭

中文乱码真的很烦人,不管是出现在数据库中的,还是出现在网站上的!

Tomcat默认对request使用ISO-8859-1编码,也就是Latin-1编码。

而且,从Tomcat5.5以后,GET和POST分别编码,也就是说,需要分别设置GET和POST的编码方式!

详情参见:

Tomcat UTF-8 乱码问题解决办法

1、对于GET请求

设置编码的一个比较有效的方式是修改Tomcat的server.xml文件:

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

添加URIEncoding="UTF-8"属性,这样就可以将GET请求的request编码格式设置为UTF-8。

2、对于POST请求

设置

request.setCharacterEncoding("UTF-8");

全部搞定!

注意,如果你什么都不设置的话,也就说你使用Tomcat默认的ISO-8895-1编码,那么,可以通过如下方式获得UTF-8编码的中文:

String param=new String(request.getParameter("param-name").getBytes("ISO-8859-1"),"UTF-8");

当然啦,如果页面传过来的中文是使用GBK或者GB2312编码的,那么只需要把上面那行代码的UTF-8换成GBK或者GB2312就行了~

参考网站:

1、Tomcat UTF-8 乱码问题解决办法(非常好!强烈推荐!)

2、设置Tomcat的UTF-8编码

为什么一直拿UTF-8举例子呢?因为网上的前辈们强烈推荐使用UTF-8建站:就是说,全站都使用UTF-8编码!这样可以减少很多繁琐的编码格式转换!

珍爱生命,远离编码格式转换!

【上篇】
【下篇】

抱歉!评论已关闭.