jsp的url中传参有中文后台接受会乱码的解决方法

var bizUrl = '${basePath}/****/Search.do?'+'&appUnitId=' + appUnitId + '&appUserName=' + appUserName;

后台接受

String appUserNameAccept = request.getParameter("appUserName");

接受的是个乱码。。。。。。。。。。。。

解决方法

一般的情况下页面传参发生乱码只要设置下页面的编码格式,同时修改tomcat的server.xml中的编码格式即可,若tomcat下有多个项目的时,改编码可能影响其他项目编码。
第一种:我们可以在后台做一个处理。
@RequestMapping( value="/test",produces = “text/html;charset=UTF-8”)
在@RequestMapping注解里面加上produces = “text/html;charset=UTF-8”;这个是针对你返回的类型;当我要返回前台的是一个json的时候,produces = “text/json;charset=UTF-8”;
第二种:在前台进行处理的时候在ajax里面加上: contentType:“application/x-www-form-urlencoded; charset=utf-8”
第三种:如果接收到的依然乱码,后台转换

appUserName = new String(appUserNameAccept.getBytes("iso-8859-1"),"utf-8");

不过最好不要用汉字,换tomcat环境可能出现问题,原因下个文章补。

你可能感兴趣的:(前台)