静态资源映射
web开发中,不可避免地是对静态资源的访问,Spring Boot默认的静态资源映射为三样:
- classpath:/META-INF/resources/
- classpath:/resources/
- classpath:/static/
- classpath:/public/
- / 项目的根路径
// 源码
private static final String[] CLASSPATH_RESOURCE_LOCATIONS = { "classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/" };
也可以进行自定义静态资源映射,但是设置自定义后,系统默认的就会失效。所以优先系统默认。
自定义方法:
- 配置文件
- 编程
配置文件
spring:
mvc:
static-path-pattern: /backend/**
web:
resources:
static-locations:
- classpath:/backend/
将localhost:8080/backend/** 的访问
映射到 classpath:/backend/ 下
编程方式
@Slf4j
@Configuration
public class WebMvcConfiguration extends WebMvcConfigurationSupport {
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
log.info("开启静态映射....");
registry.addResourceHandler("/backend/**").addResourceLocations("classpath:/backend/");
registry.addResourceHandler("/front/**").addResourceLocations("classpath:/front/");
}
}
或者
@Slf4j
@Configuration
public class WebMvcConfiguration implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/backend/**").addResourceLocations("classpath:/backend/");
registry.addResourceHandler("/front/**").addResourceLocations("classpath:/front/");
}
}
目前 WebMvcConfigurerAdapter 已废弃。可以使用实现WebMvcConfigurer接口,继续实现原有功能。
WebMvcConfigurationSupport 可以视为新版对WebMvcConfigurer的增强,二者在同一级目录之下。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏