解决Spring下无法实时访问本地静态资源

解决Spring下浏览器无法实时访问本地静态资源

场景1:原本地文件test.json中内容为 “1”。我们通过前后端交互操作,修改test.json的内容为 “2”。此时前端再次读取test.json,会发现内容依旧为 “1”,即前端并不会实时同步本地静态资源。

场景2:如下代码我访问了一个还未创建的本地资源show.jpg,显然,浏览器会报404错误。因为图片不存在。然而当我立刻在如下目录创建一个show.jpg后,发现浏览器依旧报404错误,无法同步我们本地文件夹中图片。

<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><img src="E:\IdeaProjects\checkinsystem\src\main\resources\templates\WebSecurityTest\show.jpg">
</body>
</html>

解决方法:Tomcat并不会实时同步我们的本地文件,即使我们在IDEA工具中,打开如下的选项,我们依然要进入IDEA后,才会进行本地资源的同步。在这里插入图片描述
我们需要引入WebMVC配置类,其中有两种引入方式:
一种是通过public class ResourceConfig implements WebMvcConfigurer的方式,并在主类中开启@EnableWebMvc

@Configuration
public class AppConfig extends WebMvcConfigurationSupport {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {/** 说明:增加虚拟路径(经过本人测试:在此处配置的虚拟路径,用springboot内置的tomcat时有效,* 用外部的tomcat也有效;所以用到外部的tomcat时不需在tomcat/config下的相应文件配置虚拟路径了,阿里云linux也没问题)*///registry.addResourceHandler(mappingUrl + "/**").addResourceLocations("file:" + uploadUrl + File.separator);//阿里云(映射路径去除盘符)registry.addResourceHandler("/path/**").addResourceLocations("file:///C:/image/");    //将本地的c://image路径映射为localhost:端口号/path/**super.addResourceHandlers(registry);}
}

一种是通过public class ResourceConfig extends WebMvcConfigurationSupport的方式

@Configuration
public class ResourceConfig implements WebMvcConfigurer {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/path/**").addResourceLocations("file:///C:/image/");       }
}

结果:配置完成后,我们在前端请求静态资源时,只需要使用http://localhost:端口号/path/文件名就可以实时查看本地资源了。(如下图所示,写绝对路径的图片会报404访问错误;写我们配置好的映射路径,则会正确访问本地资源)
在这里插入图片描述

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

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

相关文章

java传值和通过引用传递

第一次使用int实验&#xff1a; public class TTEST {private static List<UserEntity> mList new LinkedList<UserEntity>(); public static void main(String[] args) {int a 0;changeA(a);System.out.println("a "a);}public static void change…

好消息:VS 2008 and .NET 3.5 Beta 2 发布了

消息来源:http://weblogs.asp.net/scottgu/archive/2007/07/26/vs-2008-and-net-3-5-beta-2-released.aspx下载地址http://www.microsoft.com/downloads/results.aspx?DisplayLangen&nr20&freetextvisualstudio2008&sortCriteriadate特点:- VS 2008 Multi-Targeti…

android 之数据存储(IO)

android 操作文件分为两种&#xff0c; 第一种&#xff1a;直接写到手机内存中&#xff0c;手机内存有限。 第二种&#xff1a;写到手机的内存卡(SD)中&#xff0c;进行操作文件。 以下分为两种情况的读精心操作&#xff0c;一个简单的demo.在此做一个记录。 代码。 package co…

Aspose.Java实现word转pdf,添加水印等操作

Aspose.Java实现word转pdf&#xff0c;添加水印等操作一. word转pdf二. 文档插入水印Aspose是一款商用版控件&#xff0c;支持各类文档操作&#xff0c;这里主要介绍如何在Springboot项目中使用破解版。 一. word转pdf 在项目中导入aspose.word包 百度网盘下载 提取码&#x…

django 1.8 官方文档翻译: 3-4-2 内建显示视图

Django 文档协作翻译小组人手紧缺&#xff0c;有兴趣的朋友可以加入我们&#xff0c;完全公益性质。 交流群&#xff1a;467338606 网站&#xff1a;http://python.usyiyi.cn/django/index.html 基于类的内建通用视图 编写Web应用可能是单调的&#xff0c;因为你需要不断的重复…

(原)学习ORACLE 视图

--视图--视图是一个逻辑表&#xff0c;是查看表的一种方式&#xff0c;用来定义来自一个或多个表的行和列的多种连接。通过视图&#xff0c;可以查看到表中的数据。--创建视图CREATE VIEW MYTEST.V_INFO(ID,NAME,LOGINNAME,Address)ASSELECT TEST.ID,TEST.NAME,TEST.LOGINNAME,…

记一次Hbase数据迁移和遇到的问题

因为集群不互通&#xff0c;所以采用手动方式迁移 1、下载目标集群数据 hadoop fs -get /apps/hbase/data/data/default/*c4be21d3000064c0 /mnt/data 2、远程复制数据&#xff0c;可以压缩一下 scp *** 3、上传数据到HDFS&#xff0c;一定要切换到hbase用户&#xff0c;不然会…

IIS中“使用 XSL 样式表无法查看 XML 输入”问题的解决

IIS中“使用 XSL 样式表无法查看 XML 输入”问题的解决2009-05-13 15:15今日安装IIS后&#xff0c;随便写了一个aspx的文件作为测试&#xff0c;发现浏览器中显示&#xff1a;使用 XSL 样式表无法查看 XML 输入。请更正错误然后单击 刷新按钮,或以后重试。这才发现了如下一个问…

SQL三种连接:内连接、外连接、交叉连接

SQL三种连接&#xff1a;内连接、外连接、交叉连接一、交叉连接&#xff08;CROSS JOIN&#xff09;二、内连接&#xff08;INNER JOIN&#xff09;三、外连接&#xff08;LEFT JOIN、RIGHT JOIN、FULL JOIN&#xff09;1.左外连接2.右外连接3.完整外连接准备两张表并以PersonI…

二叉树非递归先序遍历

二叉树的递归先序遍历很简单&#xff0c;假设二叉树的结点定义如下: 1 struct BinaryTreeNode 2 { 3 int m_nValue; 4 BinaryTreeNode* m_pLeft; 5 BinaryTreeNode* m_pRight; 6 }; 递归先序遵循:根-左-右的顺序 1 void PreOrder(BinaryTreeNode* Root) 2 { 3 …

面向对象与基于对象 区别

很多人没有区分“面向对象”和“基于对象”两个不同的概念。面向对象的三大特点&#xff08;封装&#xff0c;继承&#xff0c;多态&#xff09;却一不可。通常“基于对象”是使用对象&#xff0c;但是无法利用现有的对象模板产生新的对象类型&#xff0c;继而产生新的对象&…

Flex与Javascript交互

关键字&#xff1a;ExternalInterface 所用类库&#xff1a;SWFObject /** * Flex调用Javascript函数 * params functionName:String Javascript函数名称 * params ...params Javascript函数参数 * return 返回Javascript函数的return内容 **/ ExternalInterface.call(…

显示器调校与Soft Proofing ZZ

版权归原作者所有&#xff01; http://www.cgan.net/science/popular/cookie/displayregulate.htm 自从桌面出版走到计算机上&#xff0c;显示器成为印前流程中重要的设备之一。从扫描、数码摄影、相片修改、排版等工序中&#xff0c;也可找到显示器的存在。但往往很多同业却忽…

SparkContext: Error initializing SparkContext解决方法

SparkContext: Error initializing SparkContext解决方法Spark在配置高可用集群中&#xff0c;出现报错 ERROR SparkContext: Error initializing SparkContext. java.net.ConnectException: Call From hadoop102/192.168.10.102 to hadoop102:8020 failed on connection excep…

tomcat 绑定 ip 及域名,限制非法域名访问

公司WEB 采用linuxtomcat架构。经常会收到电信的警告&#xff0c;说某个IP下挂用了未备案域名&#xff0c;如果不处理就封IP。鉴于此&#xff0c;需要将tomcat的访问地址进行限制&#xff0c;只允许通过IP地址或者自己指定的域名来访问。配置tomcat/conf/server.xml 文件&#…

数据库设计(四)概念数据模型

目标&#xff1a;本文主要介绍如何定义实体的主、次标识符。一、标识符标识符是实体中一个或多个属性的集合&#xff0c;可用来唯一标识实体中的一个实例。要强调的是&#xff0c;CDM中的标识符等价于PDM中的主键或候选键。每个实体都必须至少有一个标识符。如果实体只有一个标…

error C2471和error C1083

error C2471和error C1083 VS2008IDE&#xff1a;编译时出现问题&#xff1a;error C2471: 无法更新程序数据库“d:\my documents\visual studio 2008\projects\mdib\mdib\debug\vc90.pdb”error C1083: 无法打开程序数据库文件:“d:\my documents\visual studio 2008\projects…

中文/英文换行总结

html部分 <div class"parent"><p class"p1">湿哒哒大的大大大的大的大大大的大的啊啊大大大啊大大打啊打大大大</p><p class"p2">湿哒哒大的大大大的大的大大大的大的啊啊大大大啊大大打啊打大大大</p><p clas…

Go学习笔记—基于Go的进程间通信

IPC&#xff08;Inter-Process Communication 进程间通信&#xff09; 一般方法&#xff1a;(1) 半双工Unix管道 (2) FIFOs(命名管道) (3) 消息队列 (4) 信号量 (5) 共享内存 (6) 网络Socket (7) RPC(远程过程调用) &#xff08;一&#xff09;管道&#xff08;Pipe&#xff…

rsync+lsyncd实现(本地以及远程)文件实时同步

lsyncd基于lua语言开发&#xff0c;整合了rsync和notify 实现文件的实时同步 系统环境cat /etc/issue CentOS release 6.6 (Final)uname -sr Linux 2.6.32-504.el6.x86_64 服务器规划 rsync服务器&#xff1a; 192.168.10.241 rsync lsyncd服务器 &#xff…