spring boot 本地图片不能加载(图片路径)的问题及解决方法
时间:2021-03-16 10:21:36|栏目:JAVA代码|点击: 次
在使用html加载图片时,发现本地图片在页面上不能显示,但是直接引用网络上的资源是可以显示的。参考了众多前人的经验,得出一下结论:
本地图片不能显示最主要的问题是,图片在本地url和图片在服务器上被加载是的URL是不一样的。也就是路径的问题。
解决的办法其实很简单,只要写一个配置文件,也就是图片位置的转化器,原理是虚拟一个在服务器上的文件夹,与本地图片的位置进行匹配。
在调用本地图片时,就相当于调用服务器上的图片。
关键的代码如下:
@Configuration
public class MyWebAppConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
/**
* @Description: 对文件的路径进行配置,创建一个虚拟路径/Path/** ,即只要在<img src="/Path/picName.jpg" />便可以直接引用图片
*这是图片的物理路径 "file:/+本地图片的地址"
* @Date: Create in 14:08 2017/12/20
*/ registry.addResourceHandler("/Path/**").addResourceLocations("file:/E:/WebPackage/IdeaProjects/shiroLearn/src/main/resources/static/");
super.addResourceHandlers(registry);
}
}
下面看下Spring boot html中无法读取本地图片问题
需要设置spring boot的静态资源路径,具体为在application.properties中添加:
spring.resources.static-locations='静态资源路径'
如以下配置指定了类路径作为静态资源路径:
spring.resources.static-locations=classpath:/
如果我的图片qiaoba.jpeg放在了src/main/resoruces/images下,那么我可以在html中如此引用图片:
<img alt="qiaoba" src="images/qiaoba.jpeg">
总结


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




