jsp链接中文参数乱码解决

在jsp中,我们又是要传的参数是中文,如果利用form表单提交方式,只要设置字符集就可以了,如果是在链接中,例如:<a href="service.jsp?param=中国">中国</a>,这时利用过滤器等设置的字符集就没用了,若项目使用的是utf-8的字符集好像不用处理也可以,当项目的字符集是gbk,jsp页面的pageEncoding="GBK"时就比较麻烦了,这时可以:
1.在jsp页面利用对中文进行转码
java.net.URLEncoder.encode("中国");
若将转码后的字符串放到链接中传值好像还是乱码,不知道是不是我当时没有覆盖原代码的问题。
2.放在链接中还是乱码,那么就用<c:url>标签传值:
<c:url var="urlName" value="service.jsp">
<c:param name="param" value=str/>
</c:url>
其中str是转码后的字符串。
3.在接收的jsp或servlet里获得该参数后使用
URLDecoder.decode(param, "GBK");转码,这样参数就又变回中文了。

其实这个乱码问题也可以在服务器上配置解决,如果想用这种方式就上网查资料吧。
其他的乱码解决在网上有好多资料,不过java的乱码和字符集问题还真是让人头疼啊!
⊙﹏⊙b汗
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值