在我的spring boot应用程序中,我有许多负责监视的bean。 今天,每个注释都带有:
@ConditionalOnProperty(name="enable.monitor", havingValue="true")
这样,监视是完全可配置的,我可以从属性文件中打开和关闭它。
我在此解决方案中不喜欢的事情是必须将这个长注释添加到每个bean中。我想知道是否有更优雅的方法来实现这种可配置的监视。也许通过给所有bean加上一些新的注释,例如@Monitoring
,然后以某种方式告诉spring根据该属性来初始化它们,这有可能吗?
欢迎其他任何建议。
答案 0 :(得分:0)
可以按照以下步骤创建自己的自定义@Monitoring
批注:
Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@ConditionalOnProperty(name="enable.monitor", havingValue="true")
public @interface Monitoring {
}
此后可以将其应用于其他bean。