我们正在使用Spring Cloud外部化微服务(基于Spring Boot)的配置。

根据我对Spring Cloud的理解,要使Bean从Config服务器加载刷新/更新的值,我们需要在Spring Cloud Client中做两件事:


在从属性文件读取值的bean上添加@RefreshScope
使用@Value
添加弹簧执行器以提供/刷新端点
刷新上下文。


场景:
我们有100多个使用@Value从属性文件读取值的类。
我必须标记所有使用@RefreshScope注释启用的bean刷新。

如何避免在所有这些类上添加@RefreshScope注释。
是否有任何快捷方式或Spring Cloud功能可以解决这种情况。

最佳答案

您可以将@Values封装到一个(或几个)@RefreshScoped ConfigurationService bean中,然后将此服务自动连接到您的类中。这样,您只有少量的请求范围的Bean,并且您的服务可以保持单例状态。

08-26 22:57
查看更多