在使用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">
总结
以上所述是小编给大家介绍的spring boot 本地图片不能加载(图片路径)的问题及解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对亿速云网站的支持!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。