`

Tomcat+Ext+Struts中文乱码问题

阅读更多

具体的解决方法:

1.修改Tomcat---->conf----->server.xml文件,在修改端口的标签后面加一行代码,如下:

Xml代码

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>


2.编写过滤器Filter

Java代码
package com.finance.utils;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class CharacterEncodingFilter implements Filter{
 public void destroy() {
 
 }
 public void doFilter(ServletRequest request, ServletResponse response,
   FilterChain chain) throws IOException, ServletException {
  request.setCharacterEncoding("utf-8");
  chain.doFilter(request, response);
 }
 public void init(FilterConfig arg0) throws ServletException {
 
 }
}


利用过滤器,把requst传递的中文参数都设成“UTF-8”编码。

3.后台项目采用UTF-8编码

4.修改web.xml文件

添加如下内容

<filter>  
 <filter-name>characterEncoding</filter-name>  
 <filter-class>com.finance.utils.CharacterEncodingFilter</filter-class>  

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


为了使设置生效,重起tomcat。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics