SpringBoot映射虚拟图片路径

各位看官可以关注博主个人博客,了解更多信息。
作者:Surpasser
链接地址:https://surpass.org.cn

前言

​ 我的毕设项目中涉及到了多媒体表单提交,以我本来的想法是希望把上传的图片文件存在我的项目中,数据库中只需要存在一个独一无二的图片名字,这样就不会因为项目的移动而需要修改图片的实际路径。

​ 当我完成信息修改的方法是发现我所上传的图片并没有显示出来。

SpringBoot映射虚拟图片路径

​ 这个问题想了很久,我的图片路径是对的,图片名字也是对的,查看源代码也是404,但是当我去复制已经在项目中存在图片到数据库确是可以在页面出来,百思不得其解。偶然间得到了灵感,突然看到我项目中的图片数量和本地磁盘中的图片数量不一致,恍然大悟,原本项目中有自己复制的图片,经过编译后是存在与class中的,后期项目启动时上传的图片上传到项目的源代码项目中,很明显时无法拿到的。

SpringBoot映射虚拟图片路径
SpringBoot映射虚拟图片路径

解决办法

​ 1.我在项目中properties配置文件中指定了本地磁盘的项目图片路径,通过配置映射项目中图片路径。

SpringBoot映射虚拟图片路径

​ 2.通过配置类指定映射图片路径。

package com.zhouli.gd.config;

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;

@Configuration
public class WebAppConfig extends WebMvcConfigurerAdapter {

    @Value("${spring.servlet.multipart.location}")
    private String storageRootFolder;

    @Value("${spring.servlet.asset.virtual.path}")
    String virtualPath;

    /***
     * 配置图片等资源虚拟路径
     * @param registry
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler(virtualPath).addResourceLocations("file:" + storageRootFolder);
        super.addResourceHandlers(registry);
    }

}

​ 3.按照原来的想法数据库中只存放图片名,通过访问修改页面。。。

SpringBoot映射虚拟图片路径
尾言:这是第一次以Springboot+Mybatis架构做一个毕业设计,原先一直时SSM+eclipse做的项目练手,此前配置图片的映射路径只需要在tomcat中配置。

方法一:


方法二:

SpringBoot映射虚拟图片路径

Original: https://www.cnblogs.com/dearsusu/p/14768255.html
Author: 青衫染红尘
Title: SpringBoot映射虚拟图片路径

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/714287/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 什么是NTP服务器?ntp时间服务器京准带你从入门到了解

    什么是NTP服务器?ntp时间服务器京准带你从入门到了解 什么是NTP服务器?ntp时间服务器京准带你从入门到了解 京准电子科技官微——ahjzsz 1、NTP协议概述 NTP最早…

    技术杂谈 2023年6月21日
    092
  • Docker安装和卸载(centos)

    Docker安装和卸载 一,已安装Docker,卸载Docker 1.方法一 sudo yum remove docker \ docker-client \ docker-cli…

    技术杂谈 2023年7月10日
    075
  • WIN7系统有些文本乱码怎么办

    有些文本工具无法编辑中文 打开控制面板,找到语言设置 区域和语言,更改系统区域设置,改成中文,重启 本文为博主原创文章,未经博主允许不得转载。 posted @2018-08-19…

    技术杂谈 2023年5月31日
    0100
  • Erp系统常用递归,查类目树,查上级,查下级

    1、无限极往上获取平台类目树信息 数据结构:商品类目id《category_id,商品类目父id《parent_id 数据需求:根据传入最低层类目id,获取所有上级类目信息(包含自…

    技术杂谈 2023年7月10日
    053
  • 深入解析kubernetes controller-runtime

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年7月25日
    050
  • Kubernetes 基础概念整理

    K8S基础组件 整个集群的控制中枢 集群控制中枢,各个模块之间的信息交互都需要经过Kube-APIServer,同时也是集群管理,资源配置,集群安全机制的入口 集群的状态管理器,保…

    技术杂谈 2023年7月11日
    062
  • bash脚本中使用密码登录机器

    一、问题 ssh命令没有密码参数,需要交互式输入; 但出于管理等需求我们可能会需要在shell脚本中登录其他机器,交互式输入密码就没法满足这种需求了。 二、实现 2.1 安装ssh…

    技术杂谈 2023年5月31日
    089
  • KestrelServer详解[3]: 自定义一个迷你版的KestrelServer

    和所有的服务器一样,KestrelServer最终需要解决的是网络传输的问题。在《网络连接的创建》,我们介绍了KestrelServer如何利用连接接听器的建立网络连接,并再次基础…

    技术杂谈 2023年5月30日
    078
  • Lua在windows下的安装

    Lua在windows下的安装 posted on2021-10-20 10:11 Ruthless 阅读(139 ) 评论() 编辑 Original: https://www….

    技术杂谈 2023年5月30日
    096
  • Vue系列—源码构建过程(四)

    在了解源码如何构建之前,我们有必要了解下 项目中一个简单的目录结构如下: 如上只是一个非常简单的一个目录,为了节约篇幅,只是把入口构建的相关的目录画出来。 我们看任何库相关的代码的…

    技术杂谈 2023年6月1日
    083
  • 5个步骤,教你瞬间明白线程和线程安全

    记得刚来杭州面试的时候,有一家公司的技术总监问了我这样一个问题:你来说说有哪些线程安全的类?我心里一想,这我早都背好了,稀里哗啦说了一大堆。 他又接着问:那你再来说说什么是线程安全…

    技术杂谈 2023年7月10日
    084
  • 实现批量自动部署Linux操作系统

    实战描述: xxx公司所服务的用户IT环境中有很多的Linux系统,品种也五花八门,有RHEL、Centos、OpenSUSE甚至还有测试环境使用的RockyLinux。当有大量的…

    技术杂谈 2023年7月23日
    077
  • Python-装饰器的入门讲解

    小白在学习装饰器时,会遇到一些地方不太理解或者不太清楚,这是因为一开始你就直接撸装饰器的缘故,那么怎样才能将装饰器理解并且弄懂呢?所以在学装饰器之前必须要弄懂函数的嵌套以及闭包,接…

    技术杂谈 2023年7月25日
    078
  • 新书上市——Microsoft Teams 平台完全手册

    今年四月份左右开始写的这本书——《Microsoft Teams 平台完全手册》,经过多少个夜晚和周末的奋战,五一期间更是一刻都没有休息,键盘写坏一个,到今天也差不多可以完整地面世…

    技术杂谈 2023年5月31日
    079
  • module federation

    webpack 5的新特性:module federation,微前端的一种形式。 参考:https://juejin.cn/post/7117055274682155038 Or…

    技术杂谈 2023年5月31日
    086
  • 使用文件映射和信号量来进程间通信

    代码改变世界 Cnblogs Dashboard Login 2014-05-22 18:57 Clingingboy 阅读(610 ) 评论() 编辑 思路: 使用文件映射来共享…

    技术杂谈 2023年5月31日
    092
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球