问题
Deployment of my restful application will be "exploded" from a single WAR file. All file paths will need to be relative and not absolute (Nesting from a single WEB-INF directory). What is the convention for specifying these files (such as .properties files .xml files etc)?
Example of wrongly specifying: file f = file(/usr/home/username/.../WEB-INF/file.something);
Example of what I'm trying to achieve: (From Controller/Servlet) file f = new file(file.something);
回答1:
You should NEVER specify a file using /usr/home
or any absolute path. The correct method is using ServletContext.getRealPath()
context.getRealPath("/WEB-INF/file.something");
There is also getResourceAsStream and getResource.
来源:https://stackoverflow.com/questions/6708412/how-do-i-specify-relative-file-paths-in-restful-web-applications