Java 在spring中写入/更新属性文件值
我有一些要求,我想在使用my spring应用程序的属性文件中写入/更新值 我已经在谷歌上搜索过了,但我还没有找到一种使用Spring的直接方法 有没有人知道怎么做,或者有没有最好的方法Java 在spring中写入/更新属性文件值,java,spring,properties-file,Java,Spring,Properties File,我有一些要求,我想在使用my spring应用程序的属性文件中写入/更新值 我已经在谷歌上搜索过了,但我还没有找到一种使用Spring的直接方法 有没有人知道怎么做,或者有没有最好的方法 提前感谢。您可以这样实现: public void saveParamChanges() { try { // create and set properties into properties object Properties props = new Properties();
提前感谢。您可以这样实现:
public void saveParamChanges() {
try {
// create and set properties into properties object
Properties props = new Properties();
props.setProperty("Prop1", "toto");
props.setProperty("Prop2", "test");
props.setProperty("Prop3", "tata");
// get or create the file
File f = new File("app-properties.properties");
OutputStream out = new FileOutputStream( f );
// write into it
DefaultPropertiesPersister p = new DefaultPropertiesPersister();
p.store(props, out, "Header COmment");
} catch (Exception e ) {
e.printStackTrace();
}
}
编辑:使用org.springframework.Util中的DefaultPropertiesPersister更新谢谢您的回答。但这是我知道的。我只想通过spring中的某个方法来实现它。@Yogesh,用于读取的Javadoc,“从JDK 1.6开始,Properties.load/store也将用于读写器,有效地将这个类变成一个简单的向后兼容适配器”,所以即使spring也不是只使用spring的方法……它使用JDK方法。你应该接受Deh的答案。注释中是否有一种SPRING特有的方法,比如使用@value关键字从属性文件中读取参数?@hirosht我认为没有。这是一个很糟糕的问题,因为你似乎必须保留一个单独的文件来处理动态参数。有没有办法知道这些属性是从哪里读来的,然后再写回来的?还有没有办法写出一个类,而不是指定道具?