1.静态资源访问
静态资源目录
只要静态资源(图片,js,html等)放在类路径下: /static (or /public or /resources or /META-INF/resources)
访问 : 当前项目根路径/ + 静态资源名
1.原理: 静态映射 /** 。
请求进来,先去找Controller看能不能处理。如果能处理的话就走了requestmapping对应的请求了!不能处理的所有请求又都交给静态资源处理器。静态资源也找不到则响应404页面。
例如:我们在默认的springboot的resources下新建一个 /public目录。再往里放一个静态资源google.png。直接访问:项目/静态资源名
2.我们不想让它直接访问项目的根路径。我们可以增加配置,增加访问静态资源的前缀
在application.yaml里面添加上配置后,我们访问上面的静态资源就得去访问 项目/res/静态资源名
spring: mvc: static-path-pattern: /res/**
这个例子就是得去访问:http://localhost:8080/res/google.png。访问之前的请求地址会报404.
3.当我们不想使用springboot指定的 /static (or /public or /resources or /META-INF/resources)这些静态资源路径的时候。我们可以自定义静态资源路径
resources: static-locations: [classpath:/haha/]
修改完后原先的的public下的google.png访问不到了。只能访问到1.png
4.webjars
我们可以吧jquery等资源文件用maven引入。引入后就可以使用webjar请访问这些静态资源了
例子:我们引入jquery的依赖.根据导入依赖的路径去请求静态资源 http://localhost:8080/webjars/jquery/3.5.1/jquery.js
<dependency> <groupId>org.webjars</groupId> <artifactId>jquery</artifactId> <version>3.5.1</version> </dependency>
请求静态资源成功!!