开发中遇到乱码问题真是一个烦。今天特来总结一下

 

1.post方式提交数据中文乱码处理

  post方式提交的数据乱码问题较容易解决,一般将服务器端的编码改为和前台页面一样就行了。比如页面jsp是utf-8,那么后台就

  request.setCharacterEncoding("UTF-8");

2.get方式提交和link链接提交

  这两种方式都是直接把参数拼在url后面传到服务器的,他们走URI

  解决方法:

     (1)修改tomcat配置文件server.xml,在Connector中修改URIEncoding属性,该属性默认是“ISO8859-1”

1  <Connector port="8080" protocol="HTTP/1.1" 
2                connectionTimeout="20000" 
3                redirectPort="8443" URIEncoding='utf-8'/>

  (2)不改tomcat配置,将传回来的参数重新转换编码

   String data = request.getParameter("paramName"); 

   byte[] source = data.getBytes("ISO8859-1"); 

   data = new String(source, "UTF-8"); 

  这样得到的data就不是乱码了。当然,如果tomcat中URIEncoding修改成了别的编码,也要把ISO8859-1换成对应的编码