Springboot如何加载静态图片

 更新时间:2022年03月18日 11:05:11   作者:宸0313  
这篇文章主要介绍了Springboot如何加载静态图片,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

如何加载静态图片

java工具类

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
 
/**
 * Created by zhangj on 2018/07/31
 */
@Configuration
public class ShowImage extends WebMvcConfigurerAdapter {
 
    /**
     * 注入图片存放路径
     */
    @Value("${upload.path.prefix}")
    private String prefix;
    @Value("${upload.path.res}")
    private String uploadPath;
 
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
           //注:使用此种方法进行路径配置时,“file:D:/OTA/” 为正确路径地址 “file:D:/OTA”为错误路径地址,需以反斜杠结尾才可正确加载
        registry.addResourceHandler("/images/**").addResourceLocations("file:" + prefix + "/");
        super.addResourceHandlers(registry);
    }
}

使用的是注入的方式

所以application中的配置:

upload:
  path:
    prefix: d:/app/share/data
    res: /upload/resource/

加载静态资源文件时使用springboot使用的方式,需注意点为拼接的路径需以反斜杠结尾,不然访问不到正确的路径地址,设置完成之后,即可进行访问。

如图片路径地址为:

file:///D:/app/share/data/upload/resource/20180919/b104721b07d64501a6d24215dbc70207.bmp

需将 file:///D:/app/share/data 更改为 http://localhost:8765/images 即可成功访问。

Springboot的图片显示问题

在springboot中的通过页面来显示本地的图片

原因

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

解决方法

因为springboot中的tomcat是内置的,所以需要编写一个配置文件,也就是图片位置的转化器,原理是在虚拟一个服务器上面的文件夹,与本地图片的位置进行匹配,在调用服务器上的图片。

配置类如下:

package com.ghrc.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
 * @author:yst
 */
@Configuration
public class UrlConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
 		 //addResourceHandler是指你想在url请求的路径
        //addResourceLocations是图片存放的真实路径
        registry.addResourceHandler("/image/**").addResourceLocations("file:D:\\file\\");
    }
}

但是得在你的页面显示前面加上

例如:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java的Spring框架下的AOP编程模式示例

    Java的Spring框架下的AOP编程模式示例

    这篇文章主要介绍了Java的Spring框架下的AOP编程模式示例,文中分别讲到了基于XML和基于@AspectJ的自定义方式,需要的朋友可以参考下
    2015-12-12
  • Spring中获取Bean对象的三种注入方式与两种注入方法详解

    Spring中获取Bean对象的三种注入方式与两种注入方法详解

    平常的Java开发中程序员在某个类中需要依赖其它类的方法,下面这篇文章主要给大家介绍了关于Spring中获取Bean对象的三种注入方式与两种注入方法的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-03-03
  • Java中List集合数据修改方式

    Java中List集合数据修改方式

    这篇文章主要介绍了Java中List集合数据修改方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Java实现导出pdf格式文件的示例代码

    Java实现导出pdf格式文件的示例代码

    这篇文章主要为大家详细介绍了Java实现导出pdf格式文件的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • JVM教程之内存管理和垃圾回收(三)

    JVM教程之内存管理和垃圾回收(三)

    这篇文章主要介绍了JVM学习笔记的第三篇内存管理和垃圾回收,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • java实现的二级联动菜单效果

    java实现的二级联动菜单效果

    这篇文章主要介绍了java实现的二级联动菜单效果,结合实例形式分析了java前台页面布局及与后台交互构造联动菜单的相关技巧,需要的朋友可以参考下
    2016-08-08
  • java Quartz定时器任务与Spring task定时的几种实现方法

    java Quartz定时器任务与Spring task定时的几种实现方法

    本篇文章主要介绍了java Quartz定时器任务与Spring task定时的几种实现方法的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-02-02
  • java向上转型发生的时机知识点详解

    java向上转型发生的时机知识点详解

    在本篇文章里小编给大家整理分享的是关于java向上转型发生的时机知识点内容,有兴趣的读者们可以参考下。
    2021-05-05
  • Java知识梳理之泛型用法详解

    Java知识梳理之泛型用法详解

    从JDK 5.0以后,Java引入了“参数化类型(Parameterized type)”的概念,允许我们在创建集合时再指定集合元素的类型。本文就来和大家深入聊聊Java泛型的使用
    2022-08-08
  • java中通过行为参数化传递代码方案

    java中通过行为参数化传递代码方案

    大家好,本篇文章主要讲的是java中通过行为参数化传递代码方案,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-02-02

最新评论