默认静态资源访问
Spring Boot的默认静态资源的路径为:
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
优先级从从高到低。

默认情况不配置静态资源访问路径时
该条件是指我们不在application.properties/yml文件中进行这个路径配置时,如图:

我们将静态资源放到以上路径(classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/)或放到者我们把静态文件直接放到webapp下

我们在浏览器输入指定地址时都是可以访问到的:

但是需要我们注意的是:如果你的应用将被打包成jar,那就不要使用src/main/webapp文件夹。尽管该文件夹是一个共同的标准,但它仅在打包成war的情况下起作用,如果产生一个jar,多数构建工具都会静悄悄的忽略它!所以根据需要进行配置

默认情况配置静态资源访问路径时
当我们在application.properties/yml中配置默认访问路径时,只能够访问到我们配置的访问路径。
在webapp下的目录中的静态文件就不能够进行访问

自定义静态资源路径的配置
一般情况下,默认的静态资源访问路径就能满足我们的需求,当然我们也可以自定义静态资源的路径:

修改配置文件
修改配置文件的方法就是修改spring.resources.static-locations的配置:

spring.resources.static-locations=classpath:/testStatic/,classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
1
通过代码修改
以增加 /myres/* 映射到 classpath:/myres/* 为例的代码处理为:
实现类继承 WebMvcConfigurerAdapter 并重写方法 addResourceHandlers

@Configuration
public class MyWebAppConfigurer
extends WebMvcConfigurerAdapter {

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/testStatic/**").addResourceLocations("classpath:/testStatic/");
super.addResourceHandlers(registry);
}
}
1
2
3
4
5
6
7
8
9
10
这样使用代码的方式自定义目录映射,并不影响Spring Boot的默认映射,可以同时使用。
---------------------
作者:w奔跑的蜗牛
来源:CSDN
原文:https://blog.csdn.net/plei_yue/article/details/79360645
版权声明:本文为博主原创文章,转载请附上博文链接!

SpringBoot:静态资源的访问和配置(转载)的更多相关文章

  1. springboot静态资源无法访问

    前言 今天使用springboot+layui+shiro实现一个前后端分离的商城后台系统,一个小小静态资源(image)问题搞了一下午:还好坚持了下来,否者崩溃.吐血都是小事 这是引入的路径 这是图 ...

  2. springmvc、springboot静态资源访问配置

    如何访问项目中的静态资源? 一.springmvc springmvc中访问静态资源,如果DispatcherServlet拦截的为"",那么静态资源的访问也会交给Dispatch ...

  3. SpringBoot静态资源访问+拦截器+Thymeleaf模板引擎实现简单登陆

    在此记录一下这十几天的学习情况,卡在模板引擎这里已经是四天了. 对Springboot的配置有一个比较深刻的认识,在此和大家分享一下初学者入门Spring Boot的注意事项,如果是初学SpringB ...

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

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

  5. spring boot 添加拦截器的简单实例(springBoot 2.x版本,添加拦截器,静态资源不可访问解决方法)

    spring中拦截器主要分两种,一个是HandlerInterceptor,一个是MethodInterceptor 一.HandlerInterceptor HandlerInterceptor是s ...

  6. Spring boot 默认静态资源路径与手动配置访问路径的方法

    这篇文章主要介绍了Spring boot 默认静态资源路径与手动配置访问路径的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下   在application.propertis中配置 ##端口号 ...

  7. 访问静态资源有问题(配置url-pattern 用"/")(两种静态资源处理)

    发起的请求是由哪些服务器程序处理的 http://localhost:8080/ch05_url_pattern/index.jsp: tomcat(jsp会转为servlet) http://loc ...

  8. SpringBoot静态资源目录

    在web开发中,静态资源的访问是必不可少的,如:图片.js.css 等资源的访问. SpringBoot对静态资源访问提供了很好的支持,基本使用默认配置就能满足开发需求. 在传统的web项目中静态资源 ...

  9. SpringMVC 部署项目静态资源文件访问问题

    问题:采用SpringMVC 部署项目后程序加载或用浏览器访问时出现类似的警告,2011-01-19 10:52:51,646 WARN [org.springframework.web.servle ...

随机推荐

  1. C#加密与解密(DES\RSA)学习笔记

    本笔记摘抄自:https://www.cnblogs.com/skylaugh/archive/2011/07/12/2103572.html,记录一下学习过程以备后续查用. 数据加密技术是网络中最基 ...

  2. Windows添加管理员用户

    使用命令提示符添加用户并提升管理员权限 net user 查看当前所有系统用户 net user dan 123456 /add 添加用户名为dan 密码为123456的用户 net localgro ...

  3. P3292 [SCOI2016]幸运数字 [线性基+倍增]

    线性基+倍增 // by Isaunoya #include <bits/stdc++.h> using namespace std; #define rep(i, x, y) for ( ...

  4. vue动画&过渡整理

  5. stringstream使用小结

    1.头文件:#include<sstream> 2.stringstream是C++提供的串流(stream)物件 3.clear()重置流的标志状态:str()清空流的内存缓冲,重复使用 ...

  6. JAVA鼠标监听器

    package howework_07; public class Example9_10 { public static void main(String args[]) { WindowMouse ...

  7. redis 安装 集群 主从 哨兵 docker

    安装redis 官方文档 docker run -d --net host -v /opt/myconfig/redis/redis.conf:/usr/local/etc/redis/redis.c ...

  8. python3练习100题——045

    题目:统计 1 到 100 之和. sum(range(1,101)) 题目太容易了,我都不想用迭代浪费时间. 觉得这100道题难度设计越来越不合理.

  9. nat123+nginx实现外网访问本机IIS发布的系统

    故事开端(前因) 嗯,内网其实是校园网络,服务器呢,不是阿里云.腾讯云之类的云服务器,而是自己正在码字的笔记本电脑:有公网IP吗?没有!校园IP分配的IP固定不?不固定,动态分配的,额~~~. 我想想 ...

  10. (ubuntu系统)安装opencv-python后,报错libSM.so.6: cannot open shared object file: No such file or directory

    这是我在 用云服务器跑python代码时候 遇到的问题  卡在这好长时间...希望对同样遇到这样窘境的小白们有所帮助 在控制台界面下,找不到cv2,,,, 解决办法 步骤一: 输入 sudo pass ...