Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在spring中写入/更新属性文件值_Java_Spring_Properties File - Fatal编程技术网

Java 在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();

我有一些要求,我想在使用my spring应用程序的属性文件中写入/更新值

我已经在谷歌上搜索过了,但我还没有找到一种使用Spring的直接方法

有没有人知道怎么做,或者有没有最好的方法


提前感谢。

您可以这样实现:

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我认为没有。这是一个很糟糕的问题,因为你似乎必须保留一个单独的文件来处理动态参数。有没有办法知道这些属性是从哪里读来的,然后再写回来的?还有没有办法写出一个类,而不是指定道具?