springboot-web-静态资源规则和定制化
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>
请求静态资源成功!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!