自动更新Java项目中的属性文件值
问题描述:
我有apache tomcat上托管的java应用程序。有些值来自project.properties文件。但要反映任何新的/更改的属性值,我需要重新启动tomcat服务/应用程序服务。自动更新Java项目中的属性文件值
那么有什么方法可以在运行时/运行中反映这些变化吗?
在此先感谢。
答
您的问题非常广泛,并且不会指定您是否使用特定框架来构建应用程序。大多数框架对此有一些默认的支持,所以如果你构建一个运行在Tomcat中的普通Java应用程序,你可以通过使用“commons configuration”来实现。
随着“公共配置”,你可以设置一个属性配置与重装策略:
String filePath = "/some/path/project.properties";
configuration = new PropertiesConfiguration(filePath);
FileChangedReloadingStrategy fileChangedReloadingStrategy = new FileChangedReloadingStrategy();
// 1 second refresh
fileChangedReloadingStrategy.setRefreshDelay("1000");
configuration.setReloadingStrategy(fileChangedReloadingStrategy);
一个完整的制定了例如用弹簧可以在this tutorial找到。
我上面的作品请将此答案标记为此问题的正确答案。 – Jeroen