Springboot后端通过路径映射获取本机图片资源

项目场景:
项目中对图片的处理与查看是必不可少的,本文将讲解如何通过项目路径来获取到本机电脑的图片资源

如图所示,在我的本机D盘的图片测试文件夹(文件夹名字不要有中文)下有一些图片,
在这里插入图片描述
我们要在浏览器上访问到这些图片,很简单,只需要在浏览器导航栏中填写我们的相关路径

比如我的路径是:D/文件测试/4c0df32a590bdc5c37eb6b145d4475f1.png

在这里插入图片描述

但是,我们怎么在我们的项目里面,通过请求响应来访问到这些图片呢?这些图片是本机电脑上的资源,这是候我们可以联想到我们WebMvc的静态资源解析器ResourceHandlers

代码实现
新建一个spring组件容器,实现WebMvcConfigurer,重写新增资源处理器的方法,新增一个图片资源处理器

package com.lyj.config;
 
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Component
public class MyWebMvcConfig implements WebMvcConfigurer {
 
    private String filePath = "D:文件测试";
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/view/**").addResourceLocations("file:"+filePath+"/");
    }
}


这时候,我们只需要写相关的映射路径了,我开启的项目端口为8036

由于我们配置了资源处理器,localhost:8036/view/4c0df32a590bdc5c37eb6b145d4475f1.png就会被拦截处理成 file:D:文件测试/4c0df32a590bdc5c37eb6b145d4475f1.png
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/66114.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RISC-V基础之函数调用(二)栈与寄存器(包含实例)

堆栈是一种后进先出(LIFO)的队列,用于存储函数调用时的临时数据和现场数据。堆栈指针sp(寄存器2)是一个普通的RISC-V寄存器,按照惯例,指向堆栈的顶部。堆栈从高地址向低地址增长,即当…

【UE4 RTS】04-Camera Pan

前言 本篇实现了CameraPawn的旋转功能。 效果 步骤 1. 打开项目设置,添加两个操作映射 2. 打开玩家控制器“RTS_PlayerController_BP”,新建一个浮点型变量,命名为“PanSpeed” 在事件图表中添加如下节点 此时运行游戏可以发现当鼠标移动…

WEB集群——负载均衡集群

目录 一、 LVS-DR 群集。 1、LVS-DR工作原理 2、LVS-DR模式的特点 3、部署LVS-DR集群 3.1 配置负载调度器(192.168.186.100) 3.2 第一台web节点服务器(192.168.186.103) 3.3 第二台web节点服务器(192.168.186.…

Q-Vision+Kvaser CAN/CAN FD/LIN总线解决方案

智能联网技术在国内的发展势头迅猛,随着汽车智能化、网联化发展大潮的到来,智能网联汽车逐步成为汽车发展的主要趋势。越来越多整车厂诉求,希望可以提供本土的测量软件,特别是关于ADAS测试。而Softing中国推出的Q-Vision软件不仅可…

f12 CSS网页调试_css样式被划了黑线怎么办

我的问题是这样的 class加上去了,但是样式不生效,此时可能是样式被其他样式覆盖了, 解决方案就是 给颜色后边添加一个!important

Docker的入门与使用

什么是Docker? docker官网 简介与概述 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上&#x…

RISCV 5 RISC-V调用规则

RISCV 5 RISC-V调用规则 1 Register Convention1.1 Integer Register Convention1.2 Floating-point Register Convention 2. Procedure Calling Convention2.1 Integer Calling Convention2.2 Hardware Floating-point Calling Convention2.3 ILP32E Calling Convention2.4 Na…

【flink】使用flink-web-ui提交作业报错

使用WebUI提交作业出现错误。 错误截图: 弹框信息: Server Response Message: org.apache.flink.runtime.rest.handler.RestHandlerException: Could not execute application.at org.apache.flink.runtime.webmonitor.handlers.JarRunHandler.lambda$h…

webshell免杀项目-Auto-JSPwebshell(五)

Auto-JSPwebshell/jsp免杀/webshell免杀/自动生成 项目地址: https://github.com/G0mini/Bypass 具体使用请参考: https://mp.weixin.qq.com/s/9-__B0MBRSXHla6O0KU7Gg

缓解针对LLM应用程序的存储提示注入攻击

推荐:使用 NSDT场景编辑器 助你快速搭建可编辑的3D应用场景 LLM提供提示文本,并根据其已训练和访问的所有数据进行响应。为了用有用的上下文补充提示,一些 AI 应用程序捕获来自用户的输入,并在将最终提示发送到 LLM 之前将用户看不…

08. 容器间通信

目录 1、前言 2、容器间通信 2.1、通过IP地址进行通信 2.2、通过DNS Server进行通信 2.3、通过Joined方式通信 3、容器跨节点通信 3.1、通过容器在宿主机上的端口映射实现 3.2、通过Docker Overlay网络实现 4、小结 1、前言 上一篇《07.Docker网络通信模式》我们初步认…

Qt应用开发(基础篇)——时间微调输入框 QDateTimeEdit、QDateEdit、QTimeEdit

一、前言 QAbstractSpinBox是全部微调输入框的父类,这是一种允许用户通过点击上下箭头按钮或输入数字来调整数值的图形用户界面控件,父类提供了当前值text、对齐方式align、只读readOnly等通用属性和方法。在上一篇数值微调输入框中有详细介绍。 QDateTi…

24届近5年南京航空航天大学自动化考研院校分析

今天给大家带来的是南京航空航天大学控制考研分析 满满干货~还不快快点赞收藏 一、南京航空航天大学 学校简介 南京航空航天大学创建于1952年10月,是新中国自己创办的第一批航空高等院校之一。1978年被国务院确定为全国重点大学;1981年经…

TM4C123库函数学习(1)--- 点亮LED+TM4C123的ROM函数简介+keil开发环境搭建

前言 (1) 首先,我们需要知道TM4C123是M4的内核。对于绝大多数人而言,入门都是学习STM32F103,这款芯片是采用的M3的内核。所以想必各位对M3内核还是有一定的了解。M4内核就是M3内核的升级版本,他继承了M3的的…

Vue3项目中使用原生input实现excel导入导出功能

重写input样式 首先我们先来重写input的原生样式&#xff0c;毕竟实在不好看。这里的思路很简单input外面套一层div然后让input撑满盒子然后给input隐藏了就行 <div class"bg-[#f8f8f8] w-[430px] h-[220px] rounded-md cursor-pointer relative outline-0">…

智慧影院--java开源电影票优惠券制作系统快速开发

搭建一个智慧影院可以通过使用Java开源电影票优惠券制作系统来快速开发。这个系统可以帮助影院管理电影票的销售和优惠活动&#xff0c;提供便捷的购票方式和优惠券的生成与使用功能。 首先&#xff0c;我们需要建立一个数据库来存储电影、影厅、放映计划、订单等信息。在数据…

Java并发编程(一)多线程基础概念

概述 多线程技术&#xff1a;基于软件或者硬件实现多个线程并发执行的技术 线程可以理解为轻量级进程&#xff0c;切换开销远远小于进程 在多核CPU的计算机下&#xff0c;使用多线程可以更好的利用计算机资源从而提高计算机利用率和效率来应对现如今的高并发网络环境 并发编程…

C++代码生成静态LIB链接库及其调用方法

1、在进行C代码移植时可将CPP文件封装为静态lib链接库&#xff0c;本文章讲述了如何将cpp文件封装为lib文件。 2、假设有文件a.cpp、a.h、b.cpp、b.h以及main.cpp&#xff0c;假设main调用了b&#xff0c;b调用了a。现在需要将a.cpp以及b.cpp封装为a.lib以及b.lib。 3、在VS2…

RISC-V公测平台发布 · UnixBench完整测试

简介 UnixBench是一个开源的GPLv2许可的工具&#xff0c;它提供了对类Unix系统性能的基本指标。 通过运行UnixBench&#xff0c;可以获得有关系统性能的基本指标&#xff0c;用于与其他系统进行比较&#xff0c;也可以作为改进系统性能的参考。但UnixBench并不是一个综合性能…

MySQL和钉钉单据接口对接

MySQL和钉钉单据接口对接 数据源系统:钉钉 钉钉&#xff08;DingTalk&#xff09;是阿里巴巴集团打造的企业级智能移动办公平台&#xff0c;是数字经济时代的企业组织协同办公和应用开发平台。钉钉将IM即时沟通、钉钉文档、钉闪会、钉盘、Teambition、OA审批、智能人事、钉工牌…