以前在项目中处理过, 将一个字符串从前台页面(html)传到后台(J2EE项目),通过js中的encodeURI函数对字符串进行加密:
js代码: value =encodeURI(value);
然后再后台通过:
java代码: java.net.URLDecoder.decode(req.getParameter("value"),"UTF-8");
对加密的字符串进行解析就OK!这样就解决了请求中文参数乱码问题!
但是,前不久项目中出现一个问题很郁闷,在后台同样通过java.net.URLDecoder.decode进行解析,但是前台的请求是JSP页面的一个<a href="">参数是一个java对象(例如:“我爱中国”)。开始想在java中找到一个与js中 encodeURI函数相同实现的方法 ,
java.net.URLEncoder.encode(“我爱中国”,"utf-8");与js encodeURI函数实现功能相同;
js代码: value =encodeURI(value);
然后再后台通过:
java代码: java.net.URLDecoder.decode(req.getParameter("value"),"UTF-8");
对加密的字符串进行解析就OK!这样就解决了请求中文参数乱码问题!
但是,前不久项目中出现一个问题很郁闷,在后台同样通过java.net.URLDecoder.decode进行解析,但是前台的请求是JSP页面的一个<a href="">参数是一个java对象(例如:“我爱中国”)。开始想在java中找到一个与js中 encodeURI函数相同实现的方法 ,
java.net.URLEncoder.encode(“我爱中国”,"utf-8");与js encodeURI函数实现功能相同;