springboot+html访问图片失败

这篇文章主要介绍了spring boot 本地图片不能加载(图片路径)的问题,解决的办法其实很简单,只要写一个配置文件,也就是图片位置的转化器,原理是虚拟一个在服务器上的文件夹,与本地图片的位置进行匹配。需要的朋友可以参考下

在使用html加载图片时,发现本地图片在页面上不能显示,但是直接引用网络上的资源是可以显示的。参考了众多前人的经验,得出一下结论:

 本地图片不能显示最主要的问题是,图片在本地url和图片在服务器上被加载是的URL是不一样的。也就是路径的问题。

 解决的办法其实很简单,只要写一个配置文件,也就是图片位置的转化器,原理是虚拟一个在服务器上的文件夹,与本地图片的位置进行匹配。

 在调用本地图片时,就相当于调用服务器上的图片。

 关键的代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

@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/static/image下,那么我可以在html中如此引用图片:

 

<body background="../static/image/img.jpg">

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值