SpringBoot版本:2.1.1
前言
上一篇博客讲了@EnableAutoConfiguration注解的工作原理,在上篇博客的基础上自定义注解,实现Bean的装配。
准备工作
在SpringBoot_EnableAutoConfiguration项目中新建两个bean,ImportBean、UserBean。里面啥都没有,什么也不用加,建好就行了。再建个配置类ImportConfiguration。如下:
public class ImportConfiguration {
@Bean
public UserBean userBean() {
return new UserBean();
}
@Bean
public MyRunnable myRunnable() {
return new MyRunnable();
}
}
EnableFlag(装配bean)
创建注解EnableFlag,如下(那些元注解我就不解释了,问度娘)。
/**
* 自定义注解,装配bean
*/
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
public @interface EnableFlag {
/**
* bean的完全限定名称
* @return
*/
String[] strName() default {};
/**
* bean的class