@Conditional是用有条件的加载bean。
@Configuration public class TestBeanConfig { // 根据条件创建, 条件写在TestConditional类里 @Bean @Conditional(TestConditional.class) public TestBean createTestBean() { return new TestBean(); } } // 配套的条件类实现 public class TestConditional implements Condition { @Override public boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata) { return false; } }
只有当 TestConditional.matches()
结果为 true 时才会创建 TestBean
。