Spring启动编辑application.properties

时间:2016-09-13 10:32:33

标签: properties spring-boot persistence

是否可以将新properties添加到application.properties或覆盖现有值?

resource = new ClassPathResource("/application.properties");
Properties props = PropertiesLoaderUtils.loadProperties(resource);

我已尝试过的事情:

使用store

props.put("spring.datasource.url", "<my value>");
prop.store(new FileOutputStream("xyz.properties"), null);

使用ConfigurableEnvironment

   @Autowired
   ConfigurableEnvironment env;

   ...

   props.put("spring.datasource.url", "<my value>");
   environment.getPropertySources().addFirst(new PropertiesPropertySource("myProps", props));

然后,当我使用props.get(key)时,它会打印正确的值,但下次我使用

Properties props = PropertiesLoaderUtils.loadProperties(resource);

它不存在。

我做错了什么,还是有另一种方法来实现这个目标?

0 个答案:

没有答案