jsp:param动作传参 乱码的问题 谢谢

我在用<jsp:include page="XX.jsp">
<jsp:param name="aa" value="一段中文"/>
</jsp:include>传参数时候在接收那边总是会出现乱码

虽然我知道JSP页面传诵中文时候是会出乱码 所以我用
<%!
public String codeToString(String str)
{
String s=str;
try{

byte[] byteb=s.getBytes("ISO-8859-1");
s=new String(byteb);
return s;
}
catch(Exception e)
{
return s;
}
}
%>
这个方法把发过来的重新编码了下

可是问题是 仍旧是乱码

后来我用FORM 表单提交一个数据试了下 POST发送方式
发送过去的中文用上面的方法转了下 然后就可以正常显示了

问题是页面传参默认是GET方法?
为何在一个FORM 中用POST提交时 用这个方法转下编码就可以显示中文了 而在动作传参的时候不行呢?
真是混乱
初学很多不明白
谢谢帮忙
对了
有什么语句可以把默认发送方式改成POST?
是不是GET发中文就会这样导致乱码?
1楼不行呀 原来试过 不过还是谢谢
2楼 谢谢啊 麻烦你了 我用的是TOMCAT

你是用Tomcat吧?这个是Tomcat的问题,他对get方法传递参数时的编码形式有问题。
解决方法:
1.打开conf/server.xml文件。
2.找到第77行左右有个Connector标签,大概内容如下:
<Connector port="8585" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" />
3.在其中加入URIEncoding="GBK"。
4.OK了,保存并重启Tomcat。
去试试吧
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-04-16
s=new String(byteb,"GB2312");试试,
request.setCharacterEncoding("gb2312");
第2个回答  2019-01-26
标签从一个jsp文件向另一个文件传递一个包含用户请求的request对象,你能够向目标文件传送参数和值,你必须通过request对象获取名为“username”的参数值并填写到文本框中才会发生改变
第3个回答  2019-02-20
你是用Tomcat吧?这个是Tomcat的问题,他对get方法传递参数时的编码形式有问题。
解决方法:
1.打开conf/server.
xml文件

2.找到第77行左右有个Connector标签,大概内容如下:
3.在其中加入URIEncoding="GBK"。
4.OK了,保存并重启Tomcat。
去试试吧

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网