扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
小编给大家分享一下在Springboot2.3中如何访问本地路径下静态资源,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
创新互联公司主营南岔网站建设的网络公司,主营网站建设方案,重庆APP软件开发,南岔h5微信小程序搭建,南岔网站营销推广欢迎南岔等地区企业咨询最近在做的一个项目中有一个比较奇葩的需求:
要在springboot中,上传本地的图片进行展示
我的第一反应是,直接在数据库字段加一个存储本地路径的字段,然后用thymeleaf的th:src渲染到前端就好了嘛!
理想很丰满,但现实却很骨感~
前端报了这样的错误Not allowed to load local resource
于是我想到了可以使用IO将图片先上传到static/images目录下,这样就不会出现禁止访问本地路径的问题了
但是这样实现,问题又来了:上传后的图片必须重启springboot,才能进行展示,否则无法加载
这个应该是因为springboot在初始化时加载静态资源,运行时导入的资源只能在再次初始化时加载
于是,我苦思冥想,查阅了多方资料,终于使用本地虚拟路径的方式,解决了这个问题
正片开始:
1.首先配置一个配置类
import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration public class MyConfigurer implements WebMvcConfigurer { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/image/**").addResourceLocations("file:E:/vote_images/"); } }
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流