原创  J2EE编码问题 收藏

       这两天总是被编码问题所困扰,页面上的汉字就是不能正常传入controller,gb2312、iso8859_1、utf-8三种编码犹如三味真火炙烤着我。不过浴火重生的我最终还是暂时搞定了这个问题。
       首先说一下我遇到的问题。我的开发环境是中文windows XP+Tomcat(这样介绍开发环境不太合适,不过影响到编码的主要涉及到这两个),页面jsp指定的是gb2312编码,问题就发生在将页面上的汉字提交到服务器后台的时候。
       汉字-->encodeURIComponent(汉字)-->Spring Filter "utf-8"-->String foo= req.getParameter("***");-->new String(foo.getBytes("foo1"),"foo2");
       上面是汉字的处理流程,关键是foo1,foo2的取值。encodeURIComponent()将汉字编码成实体字符%xy,然后传给后台服务器,在后台接受数据时应该选择foo1=iso8859_1,foo2=utf-8的组合才可以在这种情况下获得正确的汉字,至于原理暂时还没有最后理顺。
       有一点倒是值得注意:Java中的字符集为Unicode。

       未求甚解,还往见者见谅。

发表于 @ 2006年09月29日 01:56:00 | 评论( loading... ) | 编辑| 举报| 收藏

旧一篇:项目暂告一个段落 | 新一篇:十一归来

  • 发表评论
  • 评论内容:
  •  
Copyright © dyingcow
Powered by CSDN Blog