我有一个 Controller 方法,它在服务器上创建一些文件并返回它们的路径。:
@RequestMapping(value="/file", method=RequestMethod.GET)
public @ResponseBody String retrieveFile(@RequestParam("userid") String userId){
//Do some work, save a file
File newFile=Utils.getFile(userId);
FileSystemResource f=new FileSystemResource(newFile);
return f.getURL().toString();
}
在我的本地机器上运行时,响应是这样的:
file:/D:/SDKs/spring-tool-suite-3.7.1.RELEASE-e4.5.1-win32-x86_64/sts-bundle/sts-3.7.1.RELEASE/file.jpg
当我将应用程序部署到 aws beanstalk 时,响应是这样的:
file:/usr/share/tomcat8/file.jpg
如何以类似于在本地计算机上发生的方式检索绝对文件路径?
最佳答案
尽管根据服务器的不同,您的路径可能与本地计算机上的路径不同...
只要你试过正常,
file.getAbsolutePath()
功能在http://docs.oracle.com/javase/7/docs/api/java/io/File.html并且它返回相同没有办法获取驱动器名称和所有内容,特别是如果它是 VPS
关于java - Spring Controller : method to return file path?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33736685/