Struts2.0乱码解决方案

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,乱码碰到不少,象这么讨厌的倒是第一次
碰到。    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值