java - Spring中的刷新属性占位符机制

标签 java spring jakarta-ee properties-file spring-profiles

我有一个 Spring 上下文 xml 文件和一个由 PropertyPlaceholderConfigurer 机制创建的特定 bean。 我的问题是:当应用程序正在工作时,相关属性文件发生更改,并且我不想重新启动应用程序。我想重新加载相关的bean而不重新启动应用程序。

实现我的目标的最佳解决方案是什么?

最佳答案

你可以看看 github 上的 ReloadablePropertiesAnnotation https://github.com/jamesemorgan/ReloadablePropertiesAnnotation

这应该通过注释你的属性来工作

@ReloadableProperty("dynamicProperty.myProperty")
private String myProperty;

您必须添加一些 spring 配置,请参阅 github 或此博客中的示例 http://www.morgan-design.com/2012/08/reloadable-application-properties-with.html

在底层,这是使用 Guava 的 EventBus 在创建 bean 后更新 bean 的属性。

关于java - Spring中的刷新属性占位符机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20262868/

相关文章:

java - Netbeans 未使用 JDK 1.8.0_40 启动 Java DB 服务器

java - spring mvc hibernate中如何从表单获取数据并将其存储在多个表中

spring - Spring什么时候在bean的生命周期中创建代理?

java - 使用 Tomcat 在 Eclipse 中找不到源

java - 使用从 ajax 加载的 div 时的 Struts2 验证

java - Netty ByteBuf 到 byte[] 解码器

java - setter 和 getter 的构建器

java - 无法将部件的内容 (Flux<DataBuffer>) 读取到单个字符串中

java - 从 MySQL 到 MariaDB 的 Web 应用程序应该进行哪些更改?

java - 工作流拦截器和验证拦截器的区别