首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

应用GZIP动态压缩Extjs

2012-11-15 
使用GZIP动态压缩Extjspackage byd.coreimport java.io.IOExceptionimport java.util.HashMapimport ja

使用GZIP动态压缩Extjs

package byd.core;import java.io.IOException;    import java.util.HashMap;    import java.util.Iterator;    import java.util.Map;    import javax.servlet.Filter;    import javax.servlet.FilterChain;    import javax.servlet.FilterConfig;    import javax.servlet.ServletException;    import javax.servlet.ServletRequest;    import javax.servlet.ServletResponse;    import javax.servlet.http.HttpServletRequest;    import javax.servlet.http.HttpServletResponse;      public class GzipJsFilter implements Filter    {    @SuppressWarnings("unchecked")   Map headers = new HashMap();      public void destroy() { }      public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)      throws IOException, ServletException {        if (req instanceof HttpServletRequest)          doFilter((HttpServletRequest)req, (HttpServletResponse)res, chain);        else          chain.doFilter(req, res);    }      @SuppressWarnings("unchecked")   public void doFilter(HttpServletRequest request, HttpServletResponse response,      FilterChain chain)        throws IOException, ServletException    {        request.setCharacterEncoding("UTF-8");        for (Iterator it = this.headers.entrySet().iterator(); it.hasNext(); ) {          Map.Entry entry = (Map.Entry)it.next();          response.addHeader((String)entry.getKey(), (String)entry.getValue());        }        chain.doFilter(request, response);    }      @SuppressWarnings("unchecked")   public void init(FilterConfig config) throws ServletException {        String headersStr = config.getInitParameter("headers");        String[] headers = headersStr.split(",");        for (int i = 0; i < headers.length; ++i) {          String[] temp = headers[i].split("=");          this.headers.put(temp[0].trim(), temp[1].trim());        }    }    }  <filter>          <filter-name>GzipJsFilter</filter-name>          <filter-class>com.byd.core.GzipJsFilter</filter-class>          <init-param>              <param-name>headers</param-name>              <param-value>Content-Encoding=gzip</param-value>          </init-param>    </filter>    <filter-mapping>       <filter-name>GzipJsFilter</filter-name>       <url-pattern>*.gzjs</url-pattern>    </filter-mapping>

?

?

热点排行