Java论坛网»Java技术»请教关于url乱码问题.

请教关于url乱码问题.

问?:
在linux+tomca的环境上,url传递参数是中文,结果得到乱码:2006???????,请教这个问题怎么解决?
答!: 1:
a.jsp?param=中文
是这样传的参数吗?
答!: 2:
先用这个转码:
String param= new String(request.getParameter("param").getBytes("ISO-8859-1"), "GBK");
如果是通过"a.jsp?param=中文"传递参数,
再试下面两种方法:
1.在传参数之前先把参数进行转码:java.net.URLEncoder.encode(errmsg);
2.在你的Tomcat目录-->conf目录-->server.xml里找出这段:
<Connector
port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" <!--在里边加上这个参数-->URIEncoding="gb2312"
/>
答!: 3:
<a href='XXX.jsp?p=<%=java.net.URLEncoder.encode( "中文参数 ", "GBK ")% >
</a>
答!: 4:
学习
答!: 5:
首先要区分你的提交方式:
如果是get方式,那需要修改SERVER.XML,加上URIEncoding="gb2312"
如果是POST方式的话,最好写一个过滤器,在过滤器中设置setCharacterEncoding("gb2312");
这样可以一劳永逸的解决问题

所以,首先看看你的提交方式,不同的方式处理方式是不同的.
答!: 6:
是这样传递参数:a.jsp?param=中文,我已经在SERVER.XML,加上URIEncoding="GBK",但是还是乱码,但是没通过URL传递的参数显示中文正常。
答!: 7:
那就在传之前再转一下java.net.URLEncoder.encode(errmsg);
取参数的时候再转回来java.netURLDncoder.Dncode(errmsg);
我上次在?后边直接传中文是乱码,加上URIEncoding="GBK"就OK了

相关JAVA教程:
Graphics错误Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
hibernate保存后返回主键
复合主键更新问题,在线等
急...急...急... 删除树节点后如何调整光标位置
DAO初学者问题
超链接如何加密?各位学长请指教
有没有人在netbeans platform上用过jfreechart,我在run module 的时候总是报NoClassDefFoundError,不知是
请问用hibernate新增一个记录后如何返回这条记录的自增ID?
利用Font设置文本字体的问题
有合肥的兄弟么,知道合肥凯捷么,这个公司怎么样?
在面板(JPanel)中创建能滚动列表框的问题,大家帮我看看
struts:基础问题!!!!各位大侠帮帮忙啊~!!