SpringBoot十一:SpringBoot对静态资源映射规则

SpringBoot对静态资源的映射规则

动态资源映射(jar依赖)

1、动态资源,所有/webjars/**请求,都去classpath:/META-INF/resources/webjars/找资源

webjars:以jar包的方式引入静态资源

webjars官网:https://www.webjars.org/

想引入JQeury、Bootstrap等可以到官网找到对应的jar依赖,引入SpringBoot中

示范:

<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>jquery</artifactId>
    <version>3.3.1-1</version>
</dependency>

引入到pom.xml中后,去查看

对于依赖的所有/webjars/**请求,classpath:/META-INF/resources/webjars/找资源

测试,访问http://localhost:8080/webjars/jquery/3.3.1-1/jquery.js

静态资源映射(static/public等文件夹)

特点:静态资源映射都是按照优先级来映射,高优先级映射了则不会映射低优先级

/** 访问当前项目的任何资源

classpath指的是类路径,java与resource都属于类路径,静态资源文件一般都是放里面

当/**没有人处理的时候,会自动映射到下面的五种途径去找静态资源(优先级从高到低映射

第一种途径 "classpath:/META-INF/resources/" 下放静态资源
第二种途径 "classpath:/resources/"  下放静态资源
第三种途径 "classpath:/static/"  下放静态资源
第四种途径 "classpath:/public/" 下放静态资源
第五种途径 "/" 下放静态资源

图片演示五种静态资源映射

平时开发,一般都是放到static里面的

下面是一张图片放入static文件夹中,演示访问(不需要的文件夹都删除了,只留下static)

启动项目,访问http://localhost:8080/youngman.jpg

欢迎页设置

规则:

  • 首页映射,静态资源文件夹下找index.html页面,被"/**映射
  • localhost:8080/ 就会去静态资源文件下找index页面
  • 多个index页面时,按照优先级映射

例如,在public下新建一个index.html文件,然后访问localhost:8080/

注意:如果模板引擎和这里同时存在index页面,当模板引擎没有使用下图时,默认用静态资源主页,而不用templates的

首页页面图标设置

所有的**/favicon.ico 都是在静态资源文件下找(名称和后缀都不允许改动)

例如:

运行localhost:8080/就会发现图标成为首页图标,发现首页图标已经改变

注意:谷歌浏览器可以出现不了这个图标,可以选择其他浏览器,还有就是要清除缓存

改变静态文件的路径

在全局配置文件application.properties中修改

spring.resources.static-locations=classpath:/satic2/,自定义了静态文件夹路径后,系统的就失效了

例如:

结果,之前的全部失效

放入,static2文件夹中

生效

猜你喜欢

转载自blog.csdn.net/qq_41055045/article/details/102530808
今日推荐