jsp页面向后台传值是乱码

jsp页面用的gbk,中文的传到后台就全是乱码了,求大神指点

转码可以在页面中或是sevlet以及过滤都可以解决的,下面以页面和servlet为例:
方法一:设置 request 和 response 的编码 [ 页面编码必须为 u8 ]
request.setCharacterEncoding("UTF-8");//传值编码
response.setContentType("text/html;charset=UTF-8");//设置传输编码
方法二:
String str1=传来的数据。
String ss=new String(str1.getBytes("ISO-8859-1"),"utf-8"); //转码UTF8
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-09-02
你用的是什么服务器,如果是tomcat,为了保证get数据采用UTF8编码,在server.xml中进行了如下设置:

<Connector port="8080" maxThreads="150" minSpareThreads="25"
maxSpareThreads="75" enableLookups="false" redirectPort="8443"
acceptCount="100" debug="99" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="UTF-8"/>
就是添加URIEncoding="UTF-8",建议所有jsp页面的编码也设置成UTF-8,这样兼容性比较好。本回答被网友采纳
第2个回答  推荐于2017-10-09
后台是servlet写的吗,是的话加上request.setCharacterEncoding("gbk");在打印下System.out.println(new String(request.getParameter("*****").getBytes("ISO-8859-1"),"gbk");看看传过来的是否是正常的、、追问

是用的strut2,你说的我也试过了,还是没有用

追答

贴点代码来看看

追问

问题解决了,在struts的配置里加了点东西就可以传了,还是谢谢回答

本回答被提问者采纳
相似回答