首页 > 编程语言 > 详细

Spring Boot静态资源

时间:2019-11-05 10:24:36      阅读:47      评论:0      收藏:0      [点我收藏+]

1.4 SpringBoot静态资源

1.4.1 默认静态资源映射

Spring Boot 对静态资源映射提供了默认配置

Spring Boot 默认将 /** 所有访问映射到以下目录:

classpath:/static

classpath:/public

classpath:/resources

classpath:/META-INF/resources (一般使用这个,导入jar之后项目能用jar包中此目录文 件)

如:在resources目录下新建 publicresourcesstatic 三个目录,并分别放入 a.jpg b.jpg c.jpg 图片

 

浏览器分别访问:

http://localhost:8080/a.jpg

http://localhost:8080/b.jpg

http://localhost:8080/c.jpg

均能正常访问相应的图片资源。那么说明,Spring Boot 默认会挨个从 public resources static 里面找是否存在相应的资源,如果有则直接返回。

1.4.2 自定义静态资源访问

①、配置类

 

@Configuration public class WebConfig implements WebMvcConfigurer {     @Override     public void addResourceHandlers(ResourceHandlerRegistry registry) {         /*将目标目录下所有的文件都映射到指定目录下*/         registry.addResourceHandler("/img/**").addResourceLocations("file:E:\\upload\\");     } }

 

②、配置文件

 

application.properties

web.upload-path=D:/springboot/pic/

spring.mvc.static-path-pattern=/**

spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,file:${web.upload-path}

 

注意:

web.upload-path:这个属于自定义的属性,指定了一个路径,注意要以/结尾;

spring.mvc.static-path-pattern=/**:表示所有的访问都经过静态资源路径;

spring.resources.static-locations:在这里配置静态资源路径,前面说了这里的配置是覆盖默认配置,所以需要将默认的也加上否则staticpublic等这些路径将不能被当作静态资源路径,在这个最末尾的file:${web.upload-path}之所有要加file:是因为指定的是一个具体的硬盘路径,其他的使用classpath指的是系统环境变量。

Spring Boot静态资源

原文:https://www.cnblogs.com/lulli/p/11796226.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!