天天看點

[email protected]相關注解總結總結1

[email protected]相關注解總結

  • 總結1
    • 總結2

總結1

@Conditional(TestCondition.class)

這句代碼可以标注在類上面,表示該類下面的所有@Bean都會啟用配置,也可以标注在方法上面,隻是對該方法啟用配置。

@ConditionalOnBean(僅僅在目前上下文中存在某個對象時,才會執行個體化一個Bean)

@ConditionalOnClass(某個class位于類路徑上,才會執行個體化一個Bean)

@ConditionalOnExpression(當表達式為true的時候,才會執行個體化一個Bean)

@ConditionalOnMissingBean(僅僅在目前上下文中不存在某個對象時,才會執行個體化一個Bean)

@ConditionalOnMissingClass(某個class類路徑上不存在的時候,才會執行個體化一個Bean)

@ConditionalOnNotWebApplication(不是web應用)

總結2

@ConditionalOnClass:該注解的參數對應的類必須存在,否則不解析該注解修飾的配置類;

@ConditionalOnMissingBean:該注解表示,如果存在它修飾的類的bean,則不需要再建立這個bean;可以給該注解傳入參數例如@ConditionOnMissingBean(name = “example”),這個表示如果name為“example”的bean存在,這該注解修飾的代碼塊不執行。

繼續閱讀