spring和springboot注解的使用
spring和springboot注解的使用
首先看一下ElementType取值范围:
//用于描述类、接口(包括注解类型) 或enum声明
TYPE,
//用于描述域
FIELD,
//用于描述方法
METHOD,
//用于描述参数
PARAMETER,
//用于描述构造器
CONSTRUCTOR,
//用于描述局部变量
LOCAL_VARIABLE,
//用于注解类型
ANNOTATION_TYPE,
//用于描述包
PACKAGE,
//该注解能使用在自定义类型参数(参数的自定义类型可以是javaBean或者枚举等)
TYPE_PARAMETER,
//可以在任意语句使用
TYPE_USE
@Bean
value:bean别名和name是相互依赖关联的,value,name如果都使用的话值必须要一致;
name:bean名称,如果不写会默认为注解的方法名称;
autowire:自定装配默认是不开启的,建议尽量不要开启,因为自动装配不能装配基本数据类型、字符串、数组等,这是自动装配设计的局限性,并且自动装配不如依赖注入精确;
initMethod:bean的初始化之前的执行方法,该参数一般不怎么用,因为完全可以在代码中实现;
destroyMethod:默认使用javaConfig配置的bean,如果存在close或者shutdown方法,则在bean销毁时会自动执行该方法,如果你不想执行该方法,则添加@Bean(destroyMethod="")来防止出发销毁方法;
@Target({ElementType.METHOD, ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Bean {
@AliasFor("name")
String[] value() default {};
@AliasFor("value")
String[] name() default {};
Autowire autowire() default Autowire.NO;
String initMethod() default "";
String destroyMethod() default "(inferred)";
}
Autowire
NO(0),
BY_NAME(1),
BY_TYPE(2);
@Qualifier
@Primary
@Order()
@AutoConfigureBefore
@AutoConfigureAfter
ConditionalOnClass
---------------------------------------------------------------------------
国之殇,未敢忘!
南京大屠杀!
731部队!
(有关书籍《恶魔的饱食》)以及核污染水排海等一系列全无人性的操作,购买他们的食品和为它们提供帮助只会更加变本加厉的害你,呼吁大家不要购买日本相关产品
昭昭前事,惕惕后人
吾辈当自强,方使国不受他人之侮!
---------------------------------------------------------------------------
作者:三号小玩家
出处:https://www.cnblogs.com/q1359720840/
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。 版权信息

浙公网安备 33010602011771号