JSP中文乱码问题终极解决方案(2)
你提交的参数为:<%=param%>
</body>
</html>
上面这个JSP程序的功能就是通过一个URL链接向自身传递一个参数,这个参数是中文字符串,这个程序的运行效果如下图
 
对于URL传递中文参数乱码这个问题,其处理方法比较特殊,仅仅转换这个中文字符串或者设置JSP页面显示编码都是不能解决问题的,需要修改Tomcat服务器的配置文件才能解决问题。在这里修改Tomcat的conf目录下的server.xml配置文件,具体改后的代码如下
[html]
<Connector port="8080" protocol="HTTP/1.1" URIEncoding="gb2312" 
               connectionTimeout="20000"   
               redirectPort="8443" /> 
<Connector port="8080" protocol="HTTP/1.1" URIEncoding="gb2312"
               connectionTimeout="20000" 
               redirectPort="8443" />
在原来代码中添加URI编码设置URIEncoding=“gb2312”即可,重启Tomcat服务器可以得到正确的页面。其原理也和上面的情况类似,就是向程序指明编码类型,然后显示就正常了。
三、表单提交中文乱码
对于表单的数据可以使用request.getParameter(“”)的方法获取,但是当表单中出现中文数据的时候就会出现乱码。
示例代码如下
[java]
<%@ page language="java" import="java.util.*" contentType="text/html;charset=gb2312"%> 
<html> 
    <head>    
        <title>Form中文处理示例</title> 
    </head>  
    <body> 
        <font size="2"> 
                下面是表单内容: 
            <form action="AcceptFormCharset.jsp" method="post"> 
                用户名:<input type="text" name="userName" size="10"/> 
                密  码:<input type="password" name="password" size="10"/> 
                <input type="submit" value="提交"> 
	
相关新闻>>
- 发表评论
- 
				
- 最新评论 进入详细评论页>>


