JSP get提交中文乱码解决方法

解决思路:
1、在页面对乱码汉字进行编码;
2、在服务端进行解码;

页面编码具体实现
页面编码有两种方式:js方式,java方式。
js方式:
var custNameCn=$('#qy_custNameCn').val();
 custNameCn=encodeURIComponent(custNameCn);//默认utf-8
  window.open("${ctx}/module1/CustomerCheck/findPage.action?custName="+custNameCn,900,400);
java方式:
<a href="ds.jsp?url=<%=java.net.URLEncoder.encode("编码的是这里","  utf-8  ")%>">点击这里</a>

服务端解码具体实现
解码方式有两种,修改tomcat的server.xml配置,程序解码。
修改tomcat的server.xml配置
 <Connector 
         port="8080"               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000" 
               disableUploadTimeout="true"
<!--在里边加上这个参数-->
URIEncoding="
  utf-8  "
     />
注意这里配置的字符集要和页面的编码字符集一致
程序解码
custName=new String(custName.getBytes("ISO-8859-1"),"utf-8").trim();
我们注意到 使用了new String(key.getBytes("ISO-8859-1", "utf-8"))把ISO-8859-1字符集形式转换成UTF-8形式。
为什么呢?因为iso-8859-1是Java中网络传输使用的标准字符集,req.getParameter("key")得到的还是ISO-8859-1字符集,所以要转换一下才不会是乱码。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值