我必须实施一个临时的"持久性"检索一些定义的解决方案(简单的json字符串)。我有一个rest端点,它创建了我的对象的实例,然后我想在文件中写入json定义。
我目前有一个类加载器,它从我的模块中的resources文件夹加载文件,我使用这些来获取查询结果。现在我想保存一个新定义,并将其写入resources文件夹内的文件。
但是,我没有成功。我使用类加载器从现有文件中获取路径,当我尝试使用FileUtils创建新文件时,它会抛出一些错误,或者在D:中创建文件。
有没有办法在运行时使用resources文件夹添加/编辑文件?这里有一些代码也是我尝试过的众多方法之一。
public String writeDocument(String path, String content) throws IOException {
\\Example call: writeDocument("/definitions/somedefinition.txt",jsonStringHere);
\\where /definitions/somedefinition.txt is placed in /resources
ClassLoader classLoader = getClass().getClassLoader();
final URL url = classLoader.getResource(path);
final File file;
String finalPath = null;
try {
file = Paths.get(url.toURI()).toFile();
FileUtils.writeStringToFile(file, content);
finalPath = file.getAbsolutePath();
} catch (URISyntaxException e) {
e.printStackTrace();
}
return finalPath;
}