liujjun 发表于 2017-1-29 13:15:34

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。
页: [1]
查看完整版本: Tomcat+Ext+Struts中文乱码问题