解决办法
1、在后台获取时采用
String b = new String(request.getParameter("name").getBytes("iso-8859-1"));
2、 String a = new String(request.getParameter("name").getBytes("iso-8859-1"),"GBK");
此处 gbk 是前台页面编码方式
3、如果上述方法还不能解决问题
在前台处理汉字 java.net.URLEncoder.ecode("中文","GBK");//前面是要处理的中文字符
eg: window.location.href="test.do?
method=fuck&name='国'&test='<%=java.net.URLEncoder.encode("伟大的中国","GBK")%>'";
// 后边是编码规则
在后台处理方式1
String test1 = new String(request.getParameter("test").getBytes("ISO-8859-1"),"gbk");
如果方式1 不能处理
要用java.net.URLDecode.decode 解码
String name = new String(URLDecoder.decode(request.getParameter("name"),"gbk"));
4、在传递参数时对参数用javascript 方法编码 编码为 utf-8
encodeURIComponent(str);//str 指要编码的字符
5、通过服务器设置
tomcat 设置 uriEncoding ='GBK' gbk 为项目编码