要从类路径加载属性文件,我们可以简单地执行:
InputStream inputStream = CommonUtils.class.getClassLoader().getResourceAsStream("com/abc/resources/config.properties");
prop.load(inputStream);
完成上述步骤后,将正确加载所有属性。但是,如何更改属性并将其保存回动态的同一文件? (下面没有工作)
OutputStream outputStream = new FileOutputStream("com/abc/resources/config.properties");
prop.setProperty(key, value);
prop.store(outputStream, null);
答案 0 :(得分:1)
您无法以这种方式写入加载的资源。
我建议当你的应用程序第一次启动时,它会从jar文件加载默认属性并保存在一个众所周知的位置。然后,当应用程序启动时,它将从此位置读取属性。 This stack overflow question详细了解了如何以及在何处继续使用。