Springboot中如何访问静态资源?

Posted 慕斯-ing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Springboot中如何访问静态资源?相关的知识,希望对你有一定的参考价值。

Springboot中如何访问静态资源

一.传统SSM中的配置

我们常用的方式是在springmvc的配置文件中添加下面这段代码,让其过滤掉指定目录下的静态文件,不要拦截。

<mvc:resources mapping="/js/**" location="/js/"/> 
<mvc:resources mapping="/css/**" location="/css/"/>

二.Spring Boot 中的配置

其实在springboot中也是要做这样的配置,只是springboot帮我们做了。它帮我们提前设置了5个目录作为静态资源目录,分别为:

classpath:/META-INF/resources/
classpath:/resources/
classpath:/static/
classpath:/public/
/

前四个目录分别对应了 resources 目录下不同的目录,第 5 个 ‘/’ 是表示 webapp 目录中的静态资源也不被拦截,这种用的比较少。其实在 Spring Boot 项目中,默认是没有 webapp 这个目录的,但是我们可以自己添加,如果添加了,则表示webapp目录下的静态文件可以直接访问。
那如果同一个静态文件在上述5个目录中都出现,那么优先级按照上面列出的顺序。
如果我们是从 https://start.spring.io 这个网站上创建的项目,或者使用 IntelliJ IDEA 中的 Spring Boot 初始化工具创建的项目,默认帮我们创建了static文件夹,那我们就将静态资源存入“ resources/static” 目录下就可以。
如果是自己手动创建的项目也可以按照上述的位置手动创建目录。都不需要再做任何配置。比如:
在static文件夹下创建img文件夹,存放图片timg.jpg,那么访问的时候就是:

<img th:src="@/img/timg.jpg" />

以上是关于Springboot中如何访问静态资源?的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot静态资源访问

10SpringBoot 静态资源访问

SpringBoot中静态资源访问方案

01-静态资源访问

springboot静态资源访问

SpringBoot - 实现静态资源的访问(附:修改过滤规则静态资源位置)