Spring MVC配置响应静态文件请求

在web项目中,如果使用了页面,就会涉及到css/js等组件。下面讲解了如何在SpringMVC项目中,相应css、js、img文件,并启用浏览器缓存等机制。

本文使用的Spring版本为4.2.7.RELEASE。

我的项目结构目录如下:

  • 其中webapp下面的assets目录存放css/js等静态文件。

方案-1:配置处理静态文件

1234567891011121314

<mvc:resources mapping="/favicon.ico" location="/assets/favicon.ico" cache-period="600"> <mvc:cache-control cache-public="true" /></mvc:resources><mvc:resources mapping="/assets/**" location="/assets/" cache-period="600"> <mvc:cache-control cache-public="true"/> <mvc:resource-chain resource-cache="true"> <mvc:resolvers> <bean class="org.springframework.web.servlet.resource.GzipResourceResolver"/> </mvc:resolvers> </mvc:resource-chain></mvc:resources><mvc:resources mapping="/package.json" location="/assets/package.json" cache-period="600"> <mvc:cache-control cache-public="true"/></mvc:resources>

cache-period指明缓存时间为600秒,即10分钟。 GzipResourceResolver是对该静态文件进行压缩。

方案-2:配置Spring拦截器

配置Spring的拦截器,实现对静态文件的的缓存

123456789101112131415

<mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/assets/**"/> <bean id="webContentInterceptor" class="org.springframework.web.servlet.mvc.WebContentInterceptor"> <property name="cacheSeconds" value="2100"/> <property name="alwaysUseFullPath" value="true"/> <property name="cacheMappings"> <props> <!-- cache for one month --> <prop key="/assets/**">2592000</prop> </props> </property> </bean> </mvc:interceptor></mvc:interceptors>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

Galileo:一款开源Web应用审计框架

Galileo是一款针对Web应用程序的开源渗透测试工具,可帮助开发和渗透测试人员识别并利用其Web应用程序中的漏洞。

12330
来自专栏有困难要上,没有困难创造困难也要上!

制作可自运行的jar可执行文件

今天看到有人把Java的jar包制作成一个可执行文件,于是乎我也试了一把,确实也挺简单的,记录一下。

13840
来自专栏技术记录

centOS7 mini配置linux服务器(四) 配置jdk

这里简单写一下centos7Mini  安装jdk1.8的全过程。 一、下载jdk,linux版本。 地址:http://www.oracle.com/tech...

28880
来自专栏Android相关

Ijkplayer编译

ijkplayer最好用ndk-r10e来进行编译,否则会出现很多Cmake等等问题

35530
来自专栏运维小白

Linux启动顺序

linux启动顺序: 1)开机BIOS自检     2) MBR引导     3)grub引导菜单     4)加载内核kernel      5) ...

25280
来自专栏lgp20151222

Weblogic Exception in AppMerge flows' progression

原因:经过分析是web.xml配置的问题,有些servlet上面配置了'display-name',这个weblogic是不支持的。 解决:在web.xml中...

45320
来自专栏软件工程师成长笔记

CentOS7安装OracleJDK和JRE

JDK(Java Development Kit)指的是Java开发工具集。JDK是整个Java的核心,包括了Java基础类库、Java运行环境(JRE)和Ja...

54330
来自专栏欧科云

善用本地组策略编辑器,解决各种问题

15310
来自专栏猿天地

Spring Cloud Eureka 增加权限认证

上篇文章我们简单的介绍了下注册中心Eureka,文章地址:http://cxytiandi.com/blog/detail/11988 Eureka自带了一个w...

42780
来自专栏bboysoul

如何去高大上的下载电影天堂的内容

找过电影资源的人肯定都知道电影天堂这个网站,只要复制上面的链接就可以下载对应的电影。但是一个一个链接点,太麻烦了,如何去批量做,这个时候就要用到爬虫了

12520

扫码关注云+社区

领取腾讯云代金券