项目中需要将图片放在磁盘上,不能将图片放在webapp下面!
springboot默认配置基本上可以满足我们的日常需要。但是项目中大量用户上传的图片,不能放在tomcat下面,这样子每次重新部署项目的时候,图片就失效了,很是麻烦。
所以此时就需要自定义配置springboot的项目静态文件映射
<强> springboot默认的配置规则强>
映射/* *到
类路径:/静态 类路径:/公共 类路径:/资源 类路径:/meta - inf/资源
到本地文件路径也就是资源/静态下面
访问时可以:localhost: 8080/+资源路径+资源名
例如我的项目结构。
此时我访问的静态资源为:
localhost: 8080/js/jquery.min.js 引用>如果配置jquery.min。js直接在静态下面访问则是
localhost: 8080/jquery.min.js引用>但现在需要自定义映射规则:
<强>有两种方法一种是基于配置文件,另一种是基于代码层面配置。强>
1基于配置文件
#配置内部访问地址和外部图片访问地址/myimgs/* * spring.mvc.static-path-pattern=/* * spring.resources.static-locations=文件:C:/用户/恐慌/桌面/img/类路径:/静态/映射/* *到本地磁盘路径下存放的图片,和tomcat中的图片路径
访问路径则是
localhost: 8080/jquery.min.js localhost: 8080/图片名2基于代码层面配置
@ configuration 公开课WebMvcConfiguration延伸WebMvcConfigurerAdapter { @Override 公共空间addResourceHandlers (ResourceHandlerRegistry注册表){//addResourceHandler是指你想在url请求的路径//addResourceLocations是图片存放的真实路径 registry.addResourceHandler .addResourceLocations(“/* *”)(“文件:D://User/? .addResourceLocations(“类路径:/静态/?; super.addResourceHandlers(注册表); } }以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
弹簧引导自定义规则访问获取内部或者外部静态资源图片的方法