栖息地

家园

解决Jsp页面URL中传递参数乱码的方法

Jsp页面在URL中传递参数会出现乱码可以采用以下方法解决:一、使用更改Tomcat的方法。二、使用JSP的scriptLet view plaincopy to clipboardprint?三、使用自定义JSTL。

Jsp页面在URL中传递参数会出现乱码

解决方法如下:

一、使用更改Tomcat的方法。这个方法简单,但是需要改动的地方是服务器软件级别的,如果稍微变动系统将无法正确转码,移植性不高。

1、来到tomcat目录,找到conf目录下的server.xml问价,打开,找到<Connector>标签,在最后添加URIEncoding=’GBK’,效果如下:

view plaincopy to clipboardprint?

<Connector

port="8080"maxThreads="150"minSpareThreads="25"maxSpareThreads="75"

enableLookups="false"redirectPort="8443"acceptCount="100"

debug="0"connectionTimeout="20000"

disableUploadTimeout="true"URIEncoding=″GBK″/>

<Connectorport="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100"debug="0" connectionTimeout="20000"disableUploadTimeout="true" URIEncoding=″GBK″/>

这种方法对get这个方法测试成功。

2、在每个Jsp页面添加如下代码

view plaincopy to clipboardprint?

<%@pagepageEncoding=”gb2312″%>

<%@pagecontentType=”text/html;charset=gb2312″%>

<%request.setCharacterEncoding(”gb2312″);%>

<%@ page pageEncoding=”gb2312″%><%@ page contentType=”text/html;charset=gb2312″%><%request.setCharacterEncoding(”gb2312″);%>

编码方式也可以改成GBK,支持繁体中文。重启Tomcat,这一步很重要,否则可能看不到效果。

这种方法对post测试成功。建议两种同步使用。

二、使用JSP的scriptLet

view plaincopy to clipboardprint?

<%=newString(elValue.getBytes("iso-8859-1"),"GBK")%>

<%=new String(elValue.getBytes("iso-8859-1"),"GBK")%>

三、使用自定义JSTL

这是我们的重点所在,这里要详细说明.

第一,编写自定义标签

第二编写tag文件

第三部署tag文件

第四使用吧;)很简单的.

posted on 2010-07-02 10:34 drecry 阅读(203) 评论(0)  编辑  收藏 所属分类: java中有关的问题


只有注册用户登录后才能发表评论。


网站导航: