我在tomcat6的server.xml中配置URIEncoding=“GBK”,启动tomcat一切正常,可是在运行一段时候后就出现了乱码,重启tomcat就又正常了,不知道是什么原因,请高手指教,谢谢

解决方案 »

  1.   

    自己写一个过滤器: 
    public class DoFilter implements Filter 
    { public void destroy() { 
    } public void doFilter(ServletRequest arg0, ServletResponse arg1, 
    FilterChain arg2) throws IOException, ServletException { arg1.setCharacterEncoding("GBK"); 
    arg2.doFilter(arg0, arg1); } public void init(FilterConfig arg0) throws ServletException { 
    } } 在web。xml中配置: <!-- 过滤器 --> 
      <filter> 
        <filter-name>encodingFilter </filter-name> 
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter </filter-class> 
        <init-param> 
            <param-name>encoding </param-name> 
            <param-value>UTF-8 </param-value> 
        </init-param> 
        <init-param> 
            <param-name>forceEncoding </param-name> 
            <param-value>true </param-value> 
        </init-param> 
      </filter> 
      <filter-mapping> 
        <filter-name>encodingFilter </filter-name> 
        <url-pattern>*.jsp </url-pattern> 
      </filter-mapping>  
      <filter-mapping> 
        <filter-name>encodingFilter </filter-name> 
        <url-pattern>*.do </url-pattern> 
      </filter-mapping>