How do I specify relative file paths in restful we

2019-08-26 08:02发布

问题:

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.