专栏首页光变Spring MVC配置响应静态文件请求

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 条评论
登录 后参与评论

相关文章

  • Java编程风格

    Java编程的风格介绍,主要参考乐google的java code style。对模糊部分作出了明确的选择。

    白凡
  • Gradle Unsupported Method 'provided'

    白凡
  • 3.3 ASM-方法-工具类

    ‘org.objectweb.asm.commons’包含了一些预定义的方法适配器,可以用来定义自己的适配器。 本节介绍三个工具类,并且会展示它们如何和3.2....

    白凡
  • 经典面试题之手撕字符串函数

    当指针dst赋值为l的时候,前面的i已经被改为l,依次类推,就输出了lllllllll。

    公众号guangcity
  • iOS图像处理系列 - GPUImage源码解读(二)

    导语 :billzbwang写的《iOS 图像处理系列 - GPUImage源码解读(一)》里详细地介绍了核心代码的具体实现,对GPUImage的使用者有很大的...

    天天P图攻城狮
  • 深度学习入门笔记系列 ( 一 )

    本系列将分为 8 篇 。今天是第一篇 ,工欲善其事必先利其器 ,先简单讲讲当前的主流深度学习框架 TensorFlow 及其安装方法 。

    小小詹同学
  • 【董天一】什么是IPFS?(一)

    写在前面: 今天先写到这里,关于IPFS的所有事情小编都想快点告诉大家,但毕竟精力有限,小编尽量抽出时间提供更多的关于IPFS的信息。

    圆方圆学院
  • 教你自己写Android第三方库

    其实Android studio的出现很大程度上方便了我们Android开发人员,今天我们说说怎么构建我们自己的库。 依次按File->New Moudle->...

    xiangzhihong
  • TensorFlow下载与安装

    TensorFlow简介 TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意...

    xiangzhihong
  • 云服务器如何搭建Discuz! 论坛

    CrossdayDiscuz! Board(简称 Discuz!)是北京康盛新创科技有限责任公司推出的一套通用的社区论坛软件系统。自2001年6月面世以来,Di...

    云服务器教程

扫码关注云+社区

领取腾讯云代金券