小编典典

更新捆绑的资源文件

java

我正在做以下事情

String str = "this is the new string";
URL resourceUrl = getClass().getResource("path_to_resource");
File file = new File(resourceUrl.toURI());
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(xml);
writer.close();

在上面的代码中,我试图写入一个Java包中包含的资源文件。执行完代码后,我的程序可以正常运行,但是该文件只是更新web-
INF中的属性文件,而不是将其更新到存储它的包中。谁能帮我弄清楚我该如何实现这一目标,或者我在这里做错了什么?非常感谢。


阅读 149

收藏
2020-11-30

共1个答案

小编典典

您不应该尝试写入与应用程序类一起存储的文件。根据应用程序服务器的不同,您尝试写入的位置可能无法写入,或者应用程序可能正在从应用程序存档(.war文件)运行。

您应该使用一个外部文件夹来存储配置和其他应用程序数据。通常,您可以通过部署期间指定的环境变量或属性来指定此文件夹。

2020-11-30