主要解决以下三种情况出现的中文乱码问题
1. 通过 <a> 带参数传入后台中文乱码
String chinese = new String(req.getParameter("chinese").toString().getBytes("iso-8859-1"), "页面编码集");
2. 通过 ajax 传入后台中文乱码
这里借助 JQuery 提供的 encodeURI 去做传输前的中文编码工作
JSP:
$.ajax({
...
data: {"chinese : encodeURI(chineseValue)},
...
});
JAVA:
String chinese = java.net.URLDecoder.decode(request.getParameter("chinese"), "页面编码");
3. 服务器端HTTP跨域传输
传输端:
String chinese = java.net.URLEncoder.encode(chinese, "UTF-8");
接收端:
String chinese = java.net.URLDecoder.decode(request.getParameter("chinese"), "UTF-8");
End .