早上本来想写这个问题的解决方法,结果由于要上神胜的党课,结果推到了下午才抽出时间,言归正传了~
现在学习jsp以及应用jsp的人越来越多,那用tomcat也必然的越来越多,不可避免的就出现了中文乱码。分为客户端乱码、服务器端乱码两种情况。
1、客户端乱码。这种情况较为常见,也较为好解决,多因为网页的编码有问题,如采用ISO-8859-1就会出现中文乱码,因为该编码方式不支持中文编码,将encoding和charset都改成utf-8或gbk就可以了,建议改为utf-8,它的统用性更好。
2、服务器端乱码。这种情况比较复杂,和tomcat的编码方式有关。要首先确定一点tomcat的默认编码方式是ISO-8859-1,假如你从客户端向服务器端后台传递中文时,必然会出现乱码, 此时有两种结办法,
(1)修改tomcat中的conf下的server.xml,在你的服务端口处的那个元素中加入URIEncoding="UTF-8"可以。
(2)在后台代码中进行编码格式的转换。即String temp=new String(传过来的变量.getBytes("ISO-8859-1"),"UTF-8");就可以将传过来的中文转成正常字符了。
通过上边的方法介绍,可以解决相当大数的中文,但是还可能会引起其它地方的乱码,希望可通过上边的介绍可以为你介绍tomcat服务下的中文乱码取得建设性的进步。呵呵,确实乱码情况比较常见,且原因比较多,若还有解决不了的欢迎留言交流。。。。