如何在使用 @ConditionalOnProperty 或 @ConditionalOnExpression 时检查两个条件

新手上路,请多包涵

在创建 bean 时,我需要检查 YAML 属性文件是否满足两个条件。我该怎么做,因为 @ConditionalOnProperty 注释只支持一个属性?

原文由 Zenith Kenneth 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 994
1 个回答

因为从 @ConditionalOnProperty 一开始就可以检查多个属性。名称/值属性是一个数组。

 @Configuration
@ConditionalOnProperty({ "property1", "property2" })
protected static class MultiplePropertiesRequiredConfiguration {

    @Bean
    public String foo() {
        return "foo";
    }

}

对于带有 AND 检查的简单布尔属性,您不需要 @ConditionalOnExpression

原文由 Josh 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进