内容简介:spring boot 对 web 静态资源的配置管理是通过配置类顾名思义,WebMvcAutoConfiguration 是web开发的相关配置都放在该类中的。那我们看看静态资源是如何配置的呢?从上面的代码中可以解读出两点关键信息:
spring boot 对 web 静态资源的配置管理是通过配置类 WebMvcAutoConfiguration 来实现的。
WebMvcAutoConfiguration 的理解
顾名思义,WebMvcAutoConfiguration 是web开发的相关配置都放在该类中的。那我们看看静态资源是如何配置的呢?
addResourceHandlers 方法中对静态资源路径做了说明
public void addResourceHandlers(ResourceHandlerRegistry registry) {
if (!this.resourceProperties.isAddMappings()) {
logger.debug("Default resource handling disabled");
return;
}
Duration cachePeriod = this.resourceProperties.getCache().getPeriod();
CacheControl cacheControl = this.resourceProperties.getCache()
.getCachecontrol().toHttpCacheControl();
if (!registry.hasMappingForPattern("/webjars/**")) {
customizeResourceHandlerRegistration(registry
.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/")
.setCachePeriod(getSeconds(cachePeriod))
.setCacheControl(cacheControl));
}
//staticPathPattern的值是 /**
String staticPathPattern = this.mvcProperties.getStaticPathPattern();
if (!registry.hasMappingForPattern(staticPathPattern)) {
customizeResourceHandlerRegistration(
registry.addResourceHandler(staticPathPattern)
.addResourceLocations(getResourceLocations(
this.resourceProperties.getStaticLocations()))
.setCachePeriod(getSeconds(cachePeriod))
.setCacheControl(cacheControl));
}
}
从上面的代码中可以解读出两点关键信息:
-
所有的
"/webjars/**都去classpath:/META-INF/resources/webjars/路径下找静态资源- 什么是webjars :以jar包的形式引入静态资源文件
- webjars官方网站
- 比如我们现在要使用 jquery 框架,在webjars官网找到他的依赖放到你的项目当中即可
<dependency> <groupId>org.webjars.bower</groupId> <artifactId>jquery</artifactId> <version>3.3.1</version> </dependency> -
如果路径是
/**时,就去以下classpath:/META-INF/resources/ classpath:/resources/ classpath:/static/ classpath:/public/
类路径查找资源文件,idea 中的项目路径如下图所示:
3.欢迎页面的映射
private Resource getIndexHtml(String location) {
return this.resourceLoader.getResource(location + "index.html");
}
意思是只要在我们的静态资源文件夹中放有 index.html文件,就能自动访问到,比如: http://localhost :8080
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Metasploit渗透测试魔鬼训练营
诸葛建伟、陈力波、田繁、孙松柏、等 / 机械工业出版社 / 2013-9-1 / 89.00元
首本中文原创Metasploit渗透测试著作,国内信息安全领域布道者和资深Metasploit渗透测试专家领衔撰写,极具权威性。以实践为导向,既详细讲解了Metasploit渗透测试的技术、流程、方法和技巧,又深刻阐释了渗透测试平台背后蕴含的思想。 本书是Metasploit渗透测试领域难得的经典佳作,由国内信息安全领域的资深Metasploit渗透测试专家领衔撰写。内容系统、广泛、有深度,......一起来看看 《Metasploit渗透测试魔鬼训练营》 这本书的介绍吧!