javaweb中url问号传值,中文乱码解决办法

时间:2021-09-21 20:10:40
如果要向action中传入这样两个参数:url/location="test.action?param=你好世界&param1=你好中国"
在后台action中获取的是一串带有‘?’的乱码;所以我们可以这样解决:
1.jsp中的解决办法:
url/location="test.action?param=encodeURI(你好世界)&param1=encodeURI(你好中国)"
2.在后台action中:
//第一个参数转码
param = new String(param.getBytes("ISO-8859-1"),"UTF-8");
param=java.net.URLDecoder.decode(param, "UTF-8");

//第二个参数转码
param1 = new String(param1.getBytes("ISO-8859-1"),"UTF-8");
param1=java.net.URLDecoder.decode(param1, "UTF-8");
这样我们就可以获得参数的中文了。