在使用Extjs过程中,ext-all.js文件太大,在网络环境不太好的时候,打开页面非常慢。为了解决网络传输时的大小,将采用gzip压缩传输。具体配置如下。
1、使用ehcache做gzip压缩。下载ehcache相关的jar包。
2、在web.xml中增加如下过滤器。
<filter>
<filter-name>GZIPFilter</filter-name>
<filter-class>net.sf.ehcache.constructs.web.filter.GzipFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>GZIPFilter</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
3、注意,如果系统使用了struts2,则把这个过滤器配置在struts2过滤器前面即可。
4、如果想使用客户端缓存,则可以使用如下过滤,配置如下:
<filter>
<filter-name>CacheFilter</filter-name>
<filter-class>com.tacitknowledge.filters.cache.CacheHeaderFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CacheFilter</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheFilter</filter-name>
<url-pattern>*.gif</url-pattern>
</filter-mapping>
5、该过滤器的下载地址为:http://sourceforge.net/projects/filterlib/
6、把tk-filters.properties这个文件中的允许缓存打开,然后放到classes下
1、使用ehcache做gzip压缩。下载ehcache相关的jar包。
2、在web.xml中增加如下过滤器。
<filter>
<filter-name>GZIPFilter</filter-name>
<filter-class>net.sf.ehcache.constructs.web.filter.GzipFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>GZIPFilter</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
3、注意,如果系统使用了struts2,则把这个过滤器配置在struts2过滤器前面即可。
4、如果想使用客户端缓存,则可以使用如下过滤,配置如下:
<filter>
<filter-name>CacheFilter</filter-name>
<filter-class>com.tacitknowledge.filters.cache.CacheHeaderFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CacheFilter</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheFilter</filter-name>
<url-pattern>*.gif</url-pattern>
</filter-mapping>
5、该过滤器的下载地址为:http://sourceforge.net/projects/filterlib/
6、把tk-filters.properties这个文件中的允许缓存打开,然后放到classes下
本文详细介绍了如何通过使用ehcache进行GZIP压缩来解决Extjs项目中ext-all.js文件过大导致的网络传输延迟问题。通过在web.xml中配置过滤器,实现了对JS文件的GZIP压缩,并提供了客户端缓存解决方案,以提高页面加载速度。
112

被折叠的 条评论
为什么被折叠?



