1. 程式人生 > 其它 >spring學習-04-@Conditional條件註解

spring學習-04-@Conditional條件註解

技術標籤:springjavaspring

1、@Conditional

條件註解;滿足當前條件,這個類中配置的所有bean註冊才能生效;

使用如下:

@Conditional({MyCondition.class})
public class TestCondition {
}
//只有dev環境時 才會載入
public class MyCondition implements Condition {

	@Override
	public boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata)
{ Environment environment = context.getEnvironment(); String property = environment.getProperty("profile"); if(property.equals("dev")){ return true; } return false; } }

2、其他@Conditional擴充套件註解

  1. @ConditionalOnBean:容器中存在指定的bean
  2. @ConditionalOnMissingBena:容器中不存在指定的bean
  3. @ConditionalOnExpression:滿足ELPS表示式指定
  4. @ConditionalOnClass:系統中有存在的類
  5. @ConditionalOnMissingClass:系統中不存在的類
  6. @ConditionalOnProperty:系統中指定的屬性是否有指定的值
  7. @ConditionalOnResource:類路徑下是否存在指定的資原始檔
  8. @ConditionalOnWebApplication:當前是web環境