img标签的奇怪问题

      本来只是为实现一个轮播图,img的url地址是从后端接口获取的,但不巧的是url地址的图片都过期了。 因为懒得重新到网上找图,就想直接用一下本地的图片,简单的想法遇到一堆问题。

问题一:

因为是springboot项目,遇到的第一个问题就是,springboot内嵌了tomcat,而tomcat禁止浏览器访问本地文件,试了一下,直接用浏览器其实是可以访问本地图片的。那么解决思路就是怎么让它不禁止访问本地文件。

解决方法可以改写WebMvcConfigurationSupport 里的方法,让他用可以访问指定的本地地址。

@Configuration
public class LocalPathWebMvcConfigurer extends WebMvcConfigurationSupport {/*** 在springboot项目中,允许浏览器访问指定本地文件** @param registry*/@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/img/**").addResourceLocations("file:///D:/exerciting/java/mall-picture/");super.addResourceHandlers(registry);}
}

本来以为找到方法,可以解决了,事实却没有显示成功。(后来改了,成功显示^_^)

但这并不代表这方法没有用,因为通过控制台查看,表示这些图片是成功获取了的,但没有显示出来。

这可能就跟前端有关了,直接访问本地行不通,那就老实到网上找一些图片喽。

偏不,本地又不只有这一个方向,我把它放前端的静态资源里不就行了(因为是前后端分离),没想到的是接下来遇到了更更奇怪的问题。

问题二:

因为要调后端接口获取地址,我就直接将“../assets/png/person.png”存到了数据库中,然后就,果然又出问题了,在尝试了<img src="../assets/png/person.png"/>发现能显示图片后,反正就是懵懵懵,然后老老实实的写<img src="src/assets/assets/png/person.png"/>,果然就没有问题了。

两个本该都能显示图片的,唯一的区别就在于调后端接口获得地址后,一个可以显示,一个不能显示。

原因那就不清楚喽, 反正有这么个事, 就看大家伙有没有遇到了。

唉,怎么想偷个懒还更麻烦了呢。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows11通过虚拟机安装Ubuntu20.04

VMware 分为 VMware Workstation Pro 和 VMware Workstation Player, Pro体验期后收费&#xff0c;Player则免费。player 早期不能创建虚拟机&#xff0c;只能Pro创建好后给Player运行&#xff0c;而现在player早已加入创建虚拟机功能&#xff0c;所以使用体验上两者相差不大&a…

物联网协议Coap之Core和NetWork简介

目录 前言 一、Coap的Core包 1、Coap对象 2、Message对象 3、Request对象 4、Response对象 二、Coap的NetWork调试 1、UDP运行模式 2、Network消息接收 3、Sender线程发送数据 三、总结 前言 在之前的博文中&#xff0c;对Californium中Coap的实现进行了简要的介绍&a…

swing快速入门(四十)JList、JComboBox实现列表框

注释很详细&#xff0c;直接上代码 上一篇 新增内容 &#x1f9e7;1.列表的属性设置与选项监听器 &#x1f9e7;2.下拉框的属性设置与选项监听器 &#x1f9e7;3.Box中组件填充情况不符合预期的处理方法 &#x1f9e7;4.LIst向Vector的转化方法 源码&#xff1a; package swing…

OpenCV 基于C++图像读取及存储API函数

OpenCV可以从存储介质中读入图像&#xff0c;也可以将摄像头(Camera)抓取的图像载入内存&#xff0c;然后进行处理。而存储图像就是将内存中的图像数据写入存储介质中&#xff0c;如写入硬盘、优盘等。 OpenCV要读入图像、操作图像。首先要用到Mat类&#xff0c;并且需创建Mat对…

mysql 获取距离某点最近的数据

方式一 算法&#xff1a;st_distance (POINT ( latitude, longitude ),POINT ( 106.695823, 26.574557 )) * 111195 SELECT*,st_distance (POINT ( latitude, longitude ),POINT ( 106.695823, 26.574557 )) * 111195 AS distance FROMtest_distance ORDER BYdistance DESC…

理想汽车迎来新算力平台负责人,内部化名为张一粟;王者荣耀在抖音直播全面开放;陈楚生等人现身央视春晚彩排

今日精选 • 理想汽车迎来新算力平台负责人,内部化名为张一粟。目前理想内部暂未公布其内部职级• 王者荣耀在抖音直播全面开放• 陈楚生等人现身央视春晚彩排 投融资 • 2023年12月份&#xff0c;中国社会融资规模增量为1.94万亿元• OpenAI 支持的人形机器人公司 1X 完成 …

mybatis之动态sql、if\choose\when\otherwise\trim\where\set\foreach\bind有案例

mybatis之动态sql 动态SQLif元素choose 、when 、otherwise 元素trim 、where 、set 元素foreach 元素bind 元素 动态SQL 定义&#xff1a;根据不同条件拼接SQLy语句&#xff0c;实现对数据库更准的操作。 实现方式&#xff1a;映射器配置文件或者注解 常用动态SQL元素&…

oracle-事务一系列理解

一个事务开始后&#xff0c;会被分配一个唯一的id号&#xff0c;xid&#xff0c;xid不仅是一个编号也是一个地址。 事务表 存在undo表空间的某一个段的段头块&#xff0c;最多存放47个事务&#xff0c;事务开始的时候&#xff0c;先将信息写入这个表&#xff0c;所以一个undo段…

css宽度适应内容

废话不多说,看如下demo,我需要将下面这个盒子的宽度变成内容自适应 方法有很多,如下 父元素设置display:flex 实现子元素宽度适应内容 如下给父元素设置flex能实现宽度自适应内容 <!DOCTYPE html><html lang"en"><head><meta charset"U…

我开源了一个 Go 学习仓库

前言 大家好&#xff0c;这里是白泽&#xff0c;我是21年8月接触的 Go 语言&#xff0c;学习 Go 也正好两年半&#xff0c;我决定重启我之前未完成的计划&#xff0c;继续阅读《The Go Programing Language》&#xff0c;一年多前我更新至第五章讲解的时候&#xff0c;工作的忙…

K8S--daemonset小结

1、简介 1、daemonset中的pod会自动设置node.kubernetes.io/unschedulable污点的容忍度&#xff0c;所以即使一台机器被设置成无法调度&#xff0c;daemonset所控制的pod也会调度到该节点上。2、当有一个节点注册到K8S集群上的时候&#xff0c;daemonset控制器将会在该节点上运…

基于springboot+vue2的灾区物资管理系统(Java毕业设计)

大家好&#xff0c;我是DeBug&#xff0c;很高兴你能来阅读&#xff01;作为一名热爱编程的程序员&#xff0c;我希望通过这些教学笔记与大家分享我的编程经验和知识。在这里&#xff0c;我将会结合实际项目经验&#xff0c;分享编程技巧、最佳实践以及解决问题的方法。无论你是…

力扣第 379 场周赛VP

目录 一1.思路2.代码 二1.思路2.代码 三1.思路2.代码 四1.思路2.代码 链接:https://leetcode.cn/contest/weekly-contest-379/ 一 1.思路 找最长对角线&#xff0c;很显然直接比较a^2 b ^ 2就行 注意更新时考虑对角线长度相等时候去面积最大 2.代码 class Solution { publ…

java中多线程

文章目录 多线程进程和线程进程线程 继承Thread类方式实现多线程设置线程名字的两个方式获取正在运行的线程线程调度模型和线程优先级设置两种调度模型优先级设置 线程控制sleepjoin守护线程 线程生命周期 多线程 进程和线程 进程 进程&#xff1a;是正在运行的程序 是系统进…

KY43 全排列

全排列板子 ti #include<bits/stdc.h>using namespace std;string s; map<string, int>mp;void swap(char &a, char &b){char em a;a b;b em; }void dfs(int n){ //将s[n~l]的全排列转化成s[n]s[n1~l]的全排列 if(n s.length()){mp[s] 1;return ;}f…

LeetCode刷题:142. 环形链表 II

题目&#xff1a; 是否独立解决&#xff1a;否&#xff0c;参考了解题思路解决问题&#xff0c;思考了用快慢指针&#xff0c;栈&#xff0c;统计链表数量定位尾巴节点&#xff08;因为是环形链表所以是死循环&#xff0c;链表数量用while循环统计不出来&#xff09;都没解决 解…

如何将.NET 8.0的ASP.NET Core Web API部署成Windows服务

写在前面 前面写了一篇关于将.NET应用转换成Windows服务的方法&#xff0c;其实真正的目的是为了探索如何将Asp.Net Core Web Api 部署成Windows 服务。基于上一篇的基础&#xff0c;只需把创建 WebApplication 的代码放到 BackgroundService 的ExecuteAsync方法中即可。 其中…

脱离于ASP.NET 和Visual Studio编辑Razor脚本

Razor Pad是一个编辑Razor脚本的工具&#xff0c;脱离于ASP.NET 和Visual Studio。 github地址&#xff1a;https://github.com/RazorPad/RazorPad 如果在编译源码时出现&#xff1a;签名时出错: 未能对 bin\Debug\app.publish\RazorPad.exe 签名。SignTool Error: No certifi…

编程探秘:Python深渊之旅-----Web 的世界(五)

随着项目进展&#xff0c;团队决定开发一个 web 界面来提升用户体验。码娜&#xff0c;作为团队的新成员&#xff0c;踏上了学习 Python web 开发的旅程。 派超&#xff08;兴奋地&#xff09;&#xff1a;我们要开发一个 web 应用啦&#xff01;码娜&#xff0c;你准备好迎接…

JavaScript数据类型、判断、检测

JavaScript数据类型 number、string、boolean、null、undefined、symbol、bigint Object【Array、RegExp、Date、Math、Function】 存储方式 1. 基础类型存储在栈内存中&#xff0c;被引用或者拷贝时&#xff0c;会创建一个完全相同的变量。 2. 引用类型存放在堆内存中&…