首页/ 学科题库/ SpringMVC/ 静态资源访问路径
SpringMVC 实战教程

静态资源访问路径

2026-05-18 约 6 分钟 juanwangdev

静态资源访问路径

静态资源路径配置决定了浏览器如何访问CSS、JS、图片等静态文件。

资源路径结构

标准目录结构

XML
webapp/
├── static/
│   ├── css/
│   ├── js/
│   ├── images/
│   └── fonts/
└── WEB-INF/
    └── views/

路径映射配置

XML配置

Java
<!-- 单一映射 -->
<mvc:resources mapping="/static/**" location="/static/"/>

<!-- 多路径映射 -->
<mvc:resources mapping="/resources/**"
               location="/static/,classpath:/resources/"/>

注解配置

jsp
@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static/**")
                .addResourceLocations("classpath:/static/")
                .setCachePeriod(3600);  // 缓存1小时
    }
}

页面引用方式

JSP页面

HTML
<%@ page contentType="text/html;charset=UTF-8" %>
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/css/style.css">
<script src="${pageContext.request.contextPath}/static/js/app.js"></script>
<img src="${pageContext.request.contextPath}/static/images/logo.png">

HTML页面

Java
<link rel="stylesheet" href="/static/css/style.css">
<script src="/static/js/app.js"></script>
<img src="/static/images/logo.png">

路径类型

路径类型格式示例
绝对路径/开头/static/css/style.css
相对路径无/开头css/style.css
上下文路径{pageContext.request.contextPath}/static/...`
Classpathclasspath:classpath:/static/

缓存配置

text
registry.addResourceHandler("/static/**")
        .addResourceLocations("/static/")
        .setCachePeriod(31536000);  // 缓存1年
缓存时间场景
0开发环境,不缓存
3600生产环境,1小时
31536000长期缓存,版本化资源

生产环境建议设置缓存,减少服务器压力;开发环境设置cachePeriod(0)便于调试。

要点总结

  • 静态资源统一放在/static目录下便于管理
  • mapping配置URL访问路径
  • location配置资源存储位置
  • 使用${pageContext.request.contextPath}避免上下文路径问题
想在手机上练这篇的配套题目?
使用微信 卷王开发者小程序/App,首页顶部扫一扫识别下方二维码,即可解锁本讲对应真题与错题本。
了解产品 App
← 上一篇 静态资源映射配置 下一篇 → 编码过滤器配置