问题描述
- 在servlet中获取jsp提交的超链接中文乱码问题
-
用的tomcat7.0 请问在jsp中提交超链接时带有中文参数,为什么在servlet中一直取得都是乱码,我已经改了jsp页面和servlet中的编码方式都是utf-8,同时我也改了tomcat7.0 中的server.xml文件将编码方式设置为utf-8,为什么还是乱码?我也在servlet中用网上的方法 new String(str.getBytes("ISO-8859-1"),"UTF-8")进行转换,还是乱码,求好心人帮助,希望不是网上随便复制粘贴的,有自己解决此问题经历的回答,谢谢了
解决方案
http://blog.csdn.net/zpryan/article/details/44809665
解决方案二:
1,request.setEncoding(utf-8) 2 项目的资源编码 , 3 servlet 编码
解决方案三:
自身实践,可以试试这个。
request.setCharacterEncoding("gb2312");
String uname = request.getParameter("userName");
String userName = new String(uname.getBytes("ISO-8859-1"), "gb2312");
解决方案四:
1、tomcat配置utf-8,tomcat的server.xml设置如下:
connectionTimeout="20000"
redirectPort="8443" maxPostSize="0"/>
2、jsp页面设置编码为utf-8
3、链接有中文用encodeuricomponent(中文字符串)转码,这样在servlet李不需要转码了
解决方案五:
1.JSP页面的默认编码是ISO-8859-1,并不是utf-8的,所以你的JSP先设置Utf-8编码;
2.其次,serlvet接收的doPost()或者doGet()接收参数并打印值出现乱码的时候,可以在接收参数前设置下编码:
request.setCharacterEncoding(utf-8);
我都是这么做的,没接受过乱码,楼主试试
时间: 2024-09-18 21:34:06