jsp乱码问题 (主要关于奇数乱码 偶数正常)

  下午做程序,突然发现从前台传参到后台总是出现乱码问题,按照网上的解决了一下,还是不能正常运行。而且比较奇怪的是在文本框输入一个字,乱码;两个字,正常;三个字,乱码;。。。。。。这就是我们所说的奇数乱码,偶数正常,解决过程实在是令人崩溃,折腾了一个下午。

   解决方法:这里首先把情况描述一下,假设有a.jsp、b.jsp页面和Test.class类,a页面有姓名文本框,b页面接收a页面提交的参数,在b页面有代码块调用Test类的方法,完成查询。

  如何解决呢?

    首先,把a页面的编码格式设置为gbk,在代码块中设置为utf-8,即:request.setCharacterEncoding("utf-8");,在b页面同样进行此操作。

    然后,b页面接收a页面的参数,即:String name = request.getParameter("name"); ,比较关键的一步来了,这个时候要进行转码处理,即

name = URLEncoder.encode(name,"utf-8"); ,然后调用Test类的doTest(name)方法,第二步结束。

    最后,在后台Test类的doTest(name)方法中,进行解码,即:URLDecoder urlDecode = new URLDecoder();
name = urlDecode.decode(name,"utf-8");,这个时候乱码基本上就搞定了。


注:大致的思路是这样,具体的请参考自己的程序作相应修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值