2021年5月26日星期三

Spring Boot内嵌tomcat关于getServletContext().getRealPath获取得到临时路径的问题

问题:

  • 使用getServletContext().getRealPath()得到的是临时文件的路径。
  • 每次重启服务,这个临时文件的路径还会变更。
  • 类似下面这种路径:

在这里插入图片描述

解决措施:

  • 在idea的启动配置里面配置工作区。

在这里插入图片描述

  • 在工作区下建立public文件夹。

  • 问题解决。

原理解释:

  • 源码位置:org\springframework\boot\web\servlet\server\DocumentRoot.java
  • SpringBoot启动后,默认会把commonDocRoot设置成这三个目录(java项目 www.fhadmin.org)。

commonDocRoot
在这里插入图片描述

  • 如果没有就会设置成临时位置。
  • 注意:这些目录都是在工作区下找的,如果没有设置工作区,肯定也是找不到的。
  • 配置好工作区,添加了public文件夹后,就能正常获取路径了。
  • 文件存储成功。

在这里插入图片描述









原文转载:http://www.shaoqun.com/a/760841.html

跨境电商:https://www.ikjzd.com/

海维:https://www.ikjzd.com/w/1891

邓白氏集团:https://www.ikjzd.com/w/582


问题:使用getServletContext().getRealPath()得到的是临时文件的路径。每次重启服务,这个临时文件的路径还会变更。类似下面这种路径:解决措施:在idea的启动配置里面配置工作区。在工作区下建立public文件夹。问题解决。原理解释:源码位置:org\springframework\boot\web\servlet\server\DocumentRoot.javaSpri
patpat:https://www.ikjzd.com/w/1079.html
邮乐网购物商城:https://www.ikjzd.com/w/1776
俄罗斯灰色清关:https://www.ikjzd.com/w/1409
eBay入驻洋码头,开设"eBay海淘旗舰店"!:https://www.ikjzd.com/articles/112369
老婆每年都逼我写房事年终总结:http://lady.shaoqun.com/m/a/270816.html
女友的D罩杯是我爸投资隆大的:http://www.30bags.com/m/a/251849.html

没有评论:

发表评论