【发布时间】:2012-09-13 20:03:51
【问题描述】:
我需要从我的项目中获取相对路径来上传照片,但是当我在测试中运行System.getProperty("user.dir"); 时,它返回/home/user/workspace/Myproject,
但如果我从我的 spring 控制器运行它,它只会返回 /home/user。
谁能提供可能正在发生的见解?
【问题讨论】:
标签: java
我需要从我的项目中获取相对路径来上传照片,但是当我在测试中运行System.getProperty("user.dir"); 时,它返回/home/user/workspace/Myproject,
但如果我从我的 spring 控制器运行它,它只会返回 /home/user。
谁能提供可能正在发生的见解?
【问题讨论】:
标签: java
user.dir 属性是您运行 Java 的当前工作目录。当您运行项目时,您在 /home/user/workspace/Myproject 中启动 java,但是当 Spring 运行它时,不能保证它是同一个工作目录。您是否正在寻找 user.home(应始终为 /home/user)?
【讨论】:
getResource()intsead。它允许您读取项目目录中的文件。这里有个问题:stackoverflow.com/questions/3209901/…
String path = request.getSession().getServletContext().getRealPath("/"); 解决了我的问题,其中request 是HttpServletRequest。谢谢!