我休息了,我试图嘲笑一些回应 我使用 Spring Boot
在 WebSphere 服务器上工作@RequestMapping(method = RequestMethod.GET, value = "", produces = {MediaType.APPLICATION_JSON_VALUE, "application/hal+json"})
public Resources<String> getAssemblyLines() throws IOException {
String fullMockPath = servletContext.getContextPath() + "\\assets\\services-mocks\\assembly-lines\\get-assembly-lines.ok.json";
List<String> result = new ArrayList<String>();
result.add(fullMockPath);
try {
byte[] rawJson = Files.readAllBytes(Paths.get(fullMockPath));
Map<String, String> mappedJson = new HashMap<String, String>();
String jsonMock = new ObjectMapper().writeValueAsString(mappedJson);
result = new ArrayList<String>();
result.add(jsonMock);
} catch (IOException e) {
result.add("Not found");
result.add(e.getMessage());
}
return new Resources<String>(result,
linkTo(methodOn(this.getClass()).getAssemblyLines()).withSelfRel());
}
我得到了
FileNotFoundException异常
累了Tushinov的解决方案
System.getProperty("user.dir");
但是这会返回我服务器的PATH,而不是我的文档根目录(是的,它们会在不同的文件夹中)
如何理解我的基本路径?
答案 0 :(得分:1)
问题How can understand my base path?
。您可以使用:
System.getProperty( “user.dir来”)
System.getProperty("user.dir")
将返回项目的路径。
示例输出:
C:\ folder_with_java_projects \ CURRENT_PROJECT
因此,如果文件位于项目文件夹中,您可以执行以下操作:
System.getProperty("user.dir") + "somePackage\someJson.json";