`
xiongzhenhui
  • 浏览: 205658 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

jsp传值乱码问题解决

    博客分类:
  • jsp
阅读更多

编写java web的程序,不可避免都要处理编码问题,最常见的问题就是中文乱码

大概的思路就是重新编码为gbk或者gb2312,分两种情况

一是post形式

二是get和AJax 形式

 

如果是post形式,只需要在获取参数前使用request.setCharacterEncoding方法设置的编码

 

如果是get和ajax形式,Tomcat对于GET请求并不会考虑使用request.setCharacterEncoding方法设置的编码。可以使用以下两种方式解决get和ajax中文乱码问题:

 1。在前台使用java.net.URLEncoder.encode(str, "UTF-8")或js的encodeURI()进行统一的编码,然后在后台使用java.net.URLDecoder.decode(str, "UTF-8")进行解码。

 

2.在后台将String先按特定编码转换成字节数组,然后根据字节数组转换成“gbk”或“gb2312"的字符串。

 String str= new String(req.getParameter("str").toString().getBytes("utf-8"), "GB2312");

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics