外部属性文件更改时重新加载属性值,弹出启动

我使用的是spring boot,我有两个外部属性文件,因此我可以轻松更改其值.

但我希望spring app会在更新时重新加载更改后的值,就像从文件中读取一样.由于属性文件很容易满足我的需要,我希望我不需要db或文件.

我使用两种不同的方式来加载属性值,代码示例将如下:

@RestController
public class Prop1Controller{

    @Value("${prop1}")
    private String prop1;


    @RequestMapping(value="/prop1",method = RequestMethod.GET)
    public String getProp() {
        return prop1;
    }
}


@RestController
public class Prop2Controller{

    @Autowired
    private Environment env;

    @RequestMapping(value="/prop2/{sysId}",method = RequestMethod.GET)
    public String prop2(@PathVariable String sysId) {
        return env.getProperty("prop2."+sysId);
    }
}

我将启动我的应用程序

-Dspring.config.location=conf/my.properties
最佳答案
我担心你需要重启Spring上下文.

转载注明原文:外部属性文件更改时重新加载属性值,弹出启动 - 代码日志