`

表单form传参, POST型可以传中文, GET型传中文到后台是乱码

 
阅读更多
  • 环境

 

表单
<form method="post或get" action="/test1/test/test" >
 
 <input type="text" name="file1" />
 
 <input type="submit" name="显示" />
 
</form> 

.web.xml加了中文传参过滤器
<!-- ##################### 传参 character encoding 中文  ###########--> 

  <filter>
  <filter-name>TomcatFormFilter</filter-name>
  <filter-class>filters.TomcatFormFilter_UTF8</filter-class>
 </filter>

 <filter-mapping>
  <filter-name>TomcatFormFilter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping> 

页面是UTF8
<%@ page language="java" contentType="text/html; charset=UTF-8" 
STRUTS2,ECLIPSE环境也是UTF8 
TOMCAT 

 

 

 

  • 现象:
    输入框输入中文,传到ACTION是乱码

 

 

 

  • 解决法1:
    表单变为POST,不再用GET

 

 

 

  • 解决法2:
    TOMCAT改UTF-8

 

打开D:\RND\server\apache-tomcat-6.0.29\conf\server.xml
 改:  
    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8" /> 

 

      JBOSS改UTF-8

 

打开D:\RND\server\jboss-5.0.0.GA\server\default\deploy\jbossweb.sar\server.xml
改:
      <!-- A HTTP/1.1 Connector on port 8080 -->
      <Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}"
               connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" /> 

你会发现JBOSS的配置文件和TOMCAT非常相像, 因为JBOSS的WEB访问的内核就是用得TOMCAT

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics