springboot处理静态资源
Spring Boot 默认为我们提供了静态资源处理,使用 WebMvcAutoConfiguration 中的配置各种属性。我们根据源码来学习。
protected void addResourceHandlers(ResourceHandlerRegistry registry) {super.addResourceHandlers(registry);if (!this.resourceProperties.isAddMappings()) {logger.debug("Default resource handling disabled");} else {ServletContext servletContext = this.getServletContext();this.addResourceHandler(registry, "/webjars/**", "classpath:/META-INF/resources/webjars/");this.addResourceHandler(registry, this.mvcProperties.getStaticPathPattern(), (registration) -> {registration.addResourceLocations(this.resourceProperties.getStaticLocations());if (servletContext != null) {registration.addResourceLocations(new Resource[]{new ServletContextResource(servletContext, "/")});}});}}
上边的代码是WebMvcAutoConfiguration中添加静态资源的方法。它提供了两种方式:
第一种:使用webjars
webjars是一种以jar包方式引入静态资源,webjars的网站,内部有丰富的资源,支持maven导入。
this.addResourceHandler(registry, “/webjars/**”, “classpath:/META-INF/resources/webjars/”);
启动项目,根据路径localhost:8080/webjars/jquery/3.5.1/jquery.js来查看结果:
第二种方式:将静态资源文件放至静态资源文件夹
① “/” 当前项目的根路径
②classpath:/META-INF/resources/
③classpath:/resources/
④classpath:/static/
⑤classpath:/public/
优先级:1>2>3>4>5
springboot处理静态资源相关推荐
- springboot设置静态资源不拦截的方法
springboot设置静态资源不拦截的方法 springboot不拦截静态资源需配置如下的类: import org.springframework.context.annotation.Confi ...
- Spring Boot与Web开发简介||SpringBoot对静态资源的映射规则
Web开发 1.简介 使用SpringBoot: 1).创建SpringBoot应用,选中我们需要的模块: 2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运 ...
- SpringBoot之静态资源访问
SpringBoot之静态资源访问 1.springboot访问静态资源的几种方式 (1)在src/main/resources/目录下创建 static文件夹 (2)在src/main/resour ...
- idea拦截了html中的静态资源,IDEA配置静态资源热加载操作(Springboot修改静态资源不重启)...
第一步: 修改file->settings->compiler->build project automatically 第二步: 按ctrl+shift+a,搜索Registry双 ...
- SpringBoot访问静态资源(图片)
SpringBoot中的静态资源访问 springboot访问静态资源的几种方式 (优先级从高到低) (1)在src/main/resources/目录下创建 META-INF/resources文件 ...
- SpringBoot访问静态资源文件(css、js、images)
(1)引入静态资源时,错误解决方法 在做SpringBoot访问静态资源文件(css.js.images)时候,发现总是报错: 以为是路径中没有添加static,所以路径又添加static,再次访问如 ...
- SpringBoot中静态资源和首页定制
在SpringBoot的标准项目中的resource目录如下 官方默认把我们的静态资源放到了static目录下,在该目录下写一个index.html即可直接访问,我们还可以在resources目录下创 ...
- 前端vue/h5下载Springboot后端静态资源(txt/word/excel)
1.首先Springboot需要配置跨域和静态资源static目录存放对应的资源文件(txt等) import org.springframework.context.annotation.Bean; ...
- SpringBoot修改静态资源映射
简介 SpringBoot默认为我们配置了静态资源的地址转发,我们只需要将静态资源放到/resources/static目录下,就可以直接进行访问.但是这样会向外界暴露出我们的项目结构,不利于项目安全 ...
- springboot:映射静态资源路径
#映射静态资源路径 spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,cla ...
最新文章
- java试用(1)hello world
- 判断数组元素相等 php,php中判断数组相等的方法以及数组运算符介绍
- java nio doug_Java NIO简介
- 配置Chrome支持本地(file协议)的AJAX请求
- OCFS2在Linux下配置文档
- 设计模式--代理模式--Java实现
- 对称二叉树c++_二叉树:我对称么?
- NAnt0.92版本首次在windows 8.1的机子上运行报错的问题解决
- ecmall商品列表页排序的完美解决方案
- 如何在基于对话框的程序中动态设置鼠标指针
- Linux系统cp:omitting directory`XXX'问题解决
- C语言学习--01 认识数据类型
- 有哪些好的编程习惯从一开始就值得坚持?
- ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.11
- Steam账号注册--流程
- ITS_Android_S 重构的梳理
- Cesium 注册及移除事件
- python编辑七段数码管引脚图_少儿Python程序第十二讲:单片机控制数码管
- 电子商务的整合之道--思践
- MM要学会的71个烹饪技巧
热门文章
- Java中普通代码块,构造代码块,静态代码块执行顺序
- BUG: button点击高亮延迟问题
- 阿里云自定义日记文件无法通过ftp下载
- Java 编程需要注意的细节
- 一流的设计师,一流的PHOTOSHOP教程.....
- 35. systemtap
- 1. thinkphp (1)
- Windows Server 2008通过计划任务定时执行bat文件
- 应用安全 - 代码审计 -Java
- Elasticsearch 7.x Nested 嵌套类型查询 | ES 干货