@EnableBinding
将课程变为@Configuration
,并将documented变为https://groups.google.com/forum/?fromgroups#!topic/google-chrome-developer-tools/fbueXIfX09k:
@RefreshScope(在技术上)在@Configuration类上工作,但它可能会导致令人惊讶的行为:例如这并不意味着该类中定义的所有@Beans本身都是@RefreshScope。具体来说,依赖于那些bean的任何东西都不能依赖于它们在启动刷新时被更新,除非它本身位于@RefreshScope中(在刷新时会重建它并重新注入其依赖项,此时它们将被重新注入)从刷新的@Configuration重新初始化。
所以只是一个实际的问题:还有一种方法可以更新一些用@EnableBinding
注释的Receiver类吗?我想它不会被框架处理,应该使用自定义@EventListener
答案 0 :(得分:0)
对于我们最简单的示例,我们使用@Configuration
类,其中@EnableBinding
被声明为业务逻辑bean本身,这可以通过@EnableBinding
是{{1因此@Configuration
。例如,由于您在Receiver bean本身上不需要@Component
,因此我将逻辑分离为使用@EnableBinding
注释的bean。 @RefreshScope
本身不会刷新,虽然在开始/停止时频道会被解除绑定/反弹。