Java Web 中文乱码问题

Java Web中文字符乱码分析:

Java Web程序开发中,由于Web容器(tomcat,WebLogic)默认使用了ISO-8859-1的编码格式(ps: 没办法,谁让容器基本都是国外的IT精英弄出来的),所以在Web应用的业务中也会使用默认的编码格式。即使浏览器提交的请求使用的是中文编码格式UTF-8,但是经过业务处理中默认编码,就会出现中文乱码问题。

一般在Java Web中使用Http请求时GET和POST两种,不同的请求方式乱码解决方案也不一样。

GET请求乱码解决:


1. 直接硬解码。          String xx  = new String(request.getParameter("xx").getBytes("iso-8859-1"),"UTF-8");

2. 修改Tomcat编码。<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>

POST 请求乱码解决:

设置过滤器,设置 request.setCharacterEncoding(“UTF-8”);
 response.setContentType("text/html;charset=UTF-8");



浏览器不同版本乱码解决:

统一设置JAVA的URLEncoder,然后跳转网页。

猜你喜欢

转载自blog.csdn.net/bz151531223/article/details/48876879