Springboot-静态资源访问

1.官方文档

1.在线文档

https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.developing-web-applications

2.基本介绍

  1. 只要静态资源放在类路径下: /static 、 /public 、 /resources 、 /META-INF/resources 可以被直接访问- 对应文件 WebProperties.java

直接放到resources目录下是访问不到的,这里的 /resources是指在resource目录的创建resources目录

private static final String[] CLASSPATH_RESOURCE_LOCATIONS = new String[]{"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/"};
  1. 常见静态资源:JS、CSS 、图片(.jpg .png .gif .bmp .svg)、字体文件(Fonts)等

  2. 访问方式 :默认: 项目根路径/ + 静态资源名 比如 http://localhost:8080/hi.jpg . - 设置 WebMvcProperties.java

/*** Path pattern used for static resources.*/
private String staticPathPattern = "/**";

3.快速入门

1.创建 SpringBoot 项目 springbootweb

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.llp</groupId><artifactId>springBootweb</artifactId><version>1.0-SNAPSHOT</version><!--导入springboot父工程-规定写法--><parent><artifactId>spring-boot-starter-parent</artifactId><groupId>org.springframework.boot</groupId><version>2.5.3</version></parent><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies>
</project>

2.创建相关静态资源目录, 并放入测试图片, 没有目录,自己创建即可, 完成测试

4.静态资源访问注意事项和细节

  1. 静态资源访问原理:静态映射是 /**, 也就是对所有请求拦截,请求进来,先看 Controller 能不能处理,不能处理的请求交给静态资源处理器,如果静态资源找不到则响应 404 页面

  1. 改变静态资源访问前缀,比如我们希望 http://localhost:8080/llp/* 去请求静态资源, 应用场景:静态资源访问前缀和控制器请求路径冲突

(1)创建src\main\resources\application.yml

spring:mvc:static-path-pattern: /llp/**

(2)重启应用,完成测试, 浏览器输入: http://localhost:8080/llp/4.jpg

  1. 改变默认的静态资源路径,比如希望在类路径下增加 llpimg 目录 作为静态资源路径 , 并完成测试.

(1)如图所示

(2)配置src\main\resources\application.yml

spring:mvc:static-path-pattern: /llp/**web:resources:#修改/指定 静态资源的访问路径/位置#static-locations: ["classpath:/llpimg/","classpath:/META-INF/resources/","classpath:/resources/", "classpath:/static/", "classpath:/public/"]      #String[] staticLocations

(3)测试访问http://localhost:8080/llp/5.png

(4)如果你配置 static-locations, 原来的访问路径就被覆盖,如果需要保留,你再指定一下即可

spring:mvc:static-path-pattern: /llp/**web:resources:#修改/指定 静态资源的访问路径/位置#static-locations: ["classpath:/llpimg/","classpath:/META-INF/resources/","classpath:/resources/", "classpath:/static/", "classpath:/public/"]      #String[] staticLocations

Springboot-静态资源访问相关推荐

  1. springboot 静态资源访问,和文件上传 ,以及路径问题

    springboot 静态资源访问: 这是springboot 默认的静态资源访问路径  访问顺序依次从前到后(http://localhost:8080/bb.jpg) spring.resourc ...

  2. springboot静态资源访问

    springboot的项目中,默认的开启的静态资源目录有: classpath:/META-INF/resources/, classpath:/resources/, classpath:/stat ...

  3. SpringBoot之静态资源访问

    SpringBoot之静态资源访问 1.springboot访问静态资源的几种方式 (1)在src/main/resources/目录下创建 static文件夹 (2)在src/main/resour ...

  4. springboot二:过滤器、拦截器、静态资源访问

    一:springboot中的过滤器 过滤器是什么? 它是基于Servlet 技术实现的, 简单的来说,过滤器就是起到过滤的作用,在web项目开发中帮我们过滤一些指定的 url做一些特殊的 处理. 过滤 ...

  5. 就SpringBoot+thymeleaf实现静态资源访问的实现

    就SpringBoot+thymeleaf实现静态资源访问的实现 露珠第一次接触SpringBoot,但是以前都是用的SpringMVC,于是乎在前后端分离开发的静态页面加载的方法上有所疑问,于是乎就 ...

  6. Spring Boot静态资源访问和配置全解析

    在web开发中,静态资源的访问时必不可少的,比如image.css.js等.SpringBoot对静态资源访问提供了很好的支持,使用其提供的基本默认配置基本可以满足开发需求,同时,又支持开发人员进行自 ...

  7. spring boot 整合web开发之文件上传、静态资源访问、异常处理、返回JSON数据

    目录 springboot 整合web开发 返回json数据 静态资源访问 文件上传 全局异常 1.返回json数据 springboot默认的是jackson-databind做为json处理器.也 ...

  8. Spring Boot 静态资源访问原理解析

    一.前言 springboot配置静态资源方式是多种多样,接下来我会介绍其中几种方式,并解析一下其中的原理. 二.使用properties属性进行配置 应该说 spring.mvc.static-pa ...

  9. SpringBoot - 静态资源映射处理

    SpringBoot - 静态资源映射处理 [1]静态资源文件映射规则 同样查看WebMVCAutoConfiguration源码如下: @Overridepublic void addResourc ...

  10. SpringBoot静态资源目录

    SpringBoot静态资源目录 前言 今天博主将为大家分享SpringBoot静态资源目录!不喜勿喷,如有异议欢迎讨论! 以下所写内容均与以前的文章有联系可以前往博文查看,陈永佳的博客 之前的一系列 ...

最新文章

  1. 用户接口(User exit)
  2. 如何控制参照PR作PO时,PO的数量不能超过PR的数量
  3. Java中类、方法声明为静态的含义
  4. boost::graph模块实现读写graphml的测试程序
  5. java中VO、PO、DTO 、DO、POJO、BO、TO
  6. android 电源管理 wakelock 唤醒锁机制
  7. LeetCode 1577. 数的平方等于两数乘积的方法数(双指针)
  8. springMVC实现的crud操作
  9. 3.3、怎么通过STLINK下载程序(附STLINK驱动包)
  10. 最新多功能工具箱小程序源码+功能超级多
  11. 机器人布里茨哪个皮肤好看_【图片】【全皮肤鉴赏系列】蒸汽机器人 布里茨【lol半价吧】_百度贴吧...
  12. python计算活了多少天计算器_年龄计算器-实际岁数计算器-周岁计算器-虚岁计算器-生日天数计算-活了多少天计算-虚岁怎么算...
  13. Java Web 开发 从入门到入?
  14. python在大数据分析中的应用
  15. 单向链表和双向链表的优缺点及使用场景
  16. 计算机组装机配置单2019,2019年电脑主流配置
  17. 你投的简历提示不合适,建议参考STAR法则
  18. 我刚刚通过 @盛大网盘EverBox 分享了 Web协议与实践HTTP.、网络协议、缓存技术和....pdf, 欢迎大家下载!...
  19. 面试难,应聘难,好工作,今安在?
  20. 查看linux下程序或者动态库到底依赖哪些so动态库以及对应的版本

热门文章

  1. checksum命令 linux_Linux下命令故障集结
  2. 北大ACM原创题目:母牛的故事(距离推理)
  3. 阿里云学生机购买需要什么资格?(特惠专场)
  4. Flutter高仿微信-表结构
  5. 第22届中国国际地面材料及铺装技术展览会
  6. Tsukinai的第七十四个程序(输出字符串中的元音字母)
  7. 618 线上摆摊 | 看直播 领京豆
  8. ios view 切上部分圆角_iOS - 指定UIView的某几个角为圆角
  9. 转的: 健康程序员:五分钟与鼠标手说再见
  10. Unity 延时的三种方法