关闭

Struts2.0乱码解决方案

1362人阅读 评论(1) 收藏 举报

1.struts2.0中,利用form表单传递参数,在action中取值正常,不会出现乱码现象,但是通过URL传递中文会出现乱码现象。如果将页面编码改
为GBK,在action中利用 cxz=new String(cxz.getBytes("ISO-8859-1"),"GBK");可以正常,但是这会导致表单传递的参数变为乱码,且无法
转换。
2.有人在tomcat中加上uriEncoding="utf-8",页面统一使用utf-8,经过测试,在URL传递某些汉字时正常,但是如果传递类似于初一一班这种汉字时会成为初一一口。
3.页面仍然统一使用UTF-8编码,在URL传递的变量时加上编码,如:
page1.setPageString(pagecount,rownum,Integer.parseInt(pageno1),pagerow,"auid="+auid_test+"&cxtj="+getCxtj()+"&cxz="+java.net.URLEncoder.encode(cxz,"UTF-8"));

取值的时候做如下编码转换:
         if(getUrlflag()==null)
         {
          cxz=new String(cxz.getBytes("ISO-8859-1"),"UTF-8");
          System.out.println("---------------------------------------->"+cxz);
          setCxz(cxz);          
         }
但这种做法需要区别参数是通过post传递还是get传递,较为麻烦。     
4.添加一个过滤器filter,暂未研究。这几天被这个乱码问题弄得头都大了,做这么久的java/jsp,乱码碰到不少,象这么讨厌的倒是第一次
碰到。    

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:157920次
    • 积分:1989
    • 等级:
    • 排名:第19657名
    • 原创:42篇
    • 转载:4篇
    • 译文:0篇
    • 评论:44条
    最新评论