您的位置:首页 > 产品设计 > UI/UE

Java Web request.getParameter中文乱码问题

2018-01-23 16:31 411 查看
近期项目遇到中文乱码问题,需要兼容很多请问,故又回顾了乱码的产生及解决,在此记录一下:

传递方(页面get/post)——>后台(经过Tomcat等服务器,以Tomcat为例)

2种情况:

1、URL形式:URL方式+参数访问、页面链接、表单get请求(http://XXX?key=value&key=value...)

解决:

a、new String(request.getParameter("XXX").getBytes("服务端编码"),"页面编码");

注:到服务端,经过Tomcat界面,需看Tomcat的server.xml文件的编码格式
<
Connector

URIEncoding
=
"utf-8"

/>


无则默认iso-8859-1,故看到好多地方直接是new String(request.getParameter("name").getBytes("iso-8859-1"),"utf-8")

b、前台js对URL转码,后台解码:

 js:encodeURI(encodeURI(url));

 后台:URLDecoder.decode(name,"UTF-8");

2、post请求

解决:request.setCharacterEncoding(“页面编码格式”),一般服务器端代码有过滤器filter,核实是否与页面编码格式一致即可。

 

感谢技术博客:http://www.jb51.net/article/80181.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: