tomcat不显示图片怎么办(解决Tomcat重新部署后图片等资源被自动删除的问题)
类别:服务器 浏览量:1411
时间:2022-01-19 00:11:30 tomcat不显示图片怎么办
解决Tomcat重新部署后图片等资源被自动删除的问题昨天在实现图片上传并返回链接这个功能时。当项目重新部署到tomcat,之前上传的一些图片等资源被自动删除了。
原因是我把图片存到了target目录下,因为只有放到它下面才能简单的通过网页链接拿到图片。
比如上传后返回这个路径:http://localhost:8080/upload/images/timg.jpg
但是当项目重新部署的时候,target会被重新构建,target里面的资源也都会删除。
(target是用来存放项目构建后的文件和目录、jar包、war包、编译的class文件。)
最后想到一个办法,把同一个图片保存在两个路径下,一个路径是target下面,另一个路径是自己开发的项目下,这样如果重新部署,自己项目里的文件就会重新对target文件进行覆盖,重新加载到target中。
下面是我的实现代码
//到本地IDEA项目中的路径 String localDirString = "E:/zideapro/onlineschool/src/main/webapp/upload/images"; //在tomcat服务器部署的项目路径 String root_String = request.getSession().getServletContext().getRealPath("/upload/images"); File localDirPath = new File(localDirString); File root_Path = new File(root_String); //本地IDEA中目录不存在则需要创建 if (!localDirPath.exists()) { localDirPath.mkdirs(); } //服务器tomcat中目录不存在则创建 if (!root_Path.exists()) { root_Path.mkdirs(); } // 本地的文件路径 File localFilePath = new File(localDirPath + File.separator + attach.getOriginalFilename());//文件目录+文件名称 // 服务器中文件的路径 File root_FilePath = new File(root_Path + File.separator + attach.getOriginalFilename());//项目部署的目录+文件名称 //将图片保存到本地 attach.transferTo(localFilePath); //从本地路径复制一份文件到tomcat服务器的下//避免重新部署是图片资源丢失 Files.copy(localFilePath.toPath(), root_FilePath.toPath()); System.out.println("editormd上传图片到本地保存的路径:" + localFilePath); System.out.println("editormd上传图片到部署项目的路径:" + root_FilePath); 输出部分: editormd上传图片到本地保存的路径:E:\zideapro\onlineschool\src\main\webapp\upload\images\timg2.jpg editormd上传图片到部署项目的路径:E:\zideapro\onlineschool\target\ssm\upload\images\timg2.jpg
这样图片资源上传到了两个路径下,当重新部署项目时本地文件会对丢失的文件进行覆盖,这样图片等资源就不会丢失了。
到此这篇关于解决Tomcat重新部署后图片等资源被自动删除的问题的文章就介绍到这了,更多相关Tomcat重新部署资源被自动删除内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
您可能感兴趣
- maven默认插件配置(Maven使用tomcat8-maven-plugin插件的详细教程)
- 如何让tomcat启动更快(快速解决Tomcat启动慢的问题,超简单)
- 如何测试idea启动tomcat成功(解决IDEA配置tomcat启动报错问题)
- linux部署tomcat项目(阿里云服务器linux系统搭建Tomcat部署Web项目)
- 阿里云怎么开启tomcat权限(腾讯云服务器tomcat端口无法访问的解决方法)
- tomcat正常启动404(Tomcat正常访问localhost报404问题解决)
- docker部署tomcat(Docker安装Tomcat、MySQL和Redis的步骤详解)
- idea 部署到tomcat 的项目在哪儿(使用IDEA创建Web项目并发布到tomcat的操作方法)
- tomcat原理详解(解析Tomcat架构原理到架构设计)
- tomcat部署web项目操作(Tomcat首次部署web项目流程图解)
- idea的tomcat怎么关闭(解决Idea的tomcat启动报多个listener的错误问题)
- tomcatxml文件放在哪(Tomcat中修改server.xml和content.xml后自动还原问题解决)
- idea调试怎么配置tomcat(如何提升Idea启动速度与Tomcat日志乱码问题)
- tomcat 多线程并发cpu(Tomcat使用线程池处理远程并发请求的方法)
- tomcat优化jvm(Tomcat修正JDK原生线程池bug的实现原理)
- linux下启动tomcat服务(Linux系统安装Tomcat并配置Service启动关闭)
- 《无敌破坏王2》 不聊彩蛋,聊聊我从动画里看到的现实那些事儿(无敌破坏王2不聊彩蛋)
- 《寄生虫》 三观不正 人类悲欢从来不相通,感同身受也并非本能(寄生虫三观不正)
- 这部动漫中的女孩子,可比101女孩更加励志(这部动漫中的女孩子)
- 《白狐的人生》热拍 贾征宇偶像包袱难自弃 图(白狐的人生热拍)
- 七夕取消了,牛郎织女没做核酸七夕已经取消(牛郎织女没做核酸七夕已经取消)
- 网友抵制 多地取消 夏日祭 为何惹众怒(网友抵制多地取消)
热门推荐
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9