实现自定义模式注解
自定义实现@Component
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Repository // 元注解模式。
public @interface FirstLevelRepository {
String value() default "";
}
使用自定义的 @FirstLevelRepository 标识bean
@FirstLevelRepository(value = "hello")
public class Hello {
}
这样就可以使用自定义的@Component注解进行管理了
我们只要在主类上扫描指定包下的bean 就可以实现注入
@ComponentScan(basePackages = {"Hello的包路径"})
public class Bootstarp {
public static void main(String[] args) {
ConfigurableApplicationContext context = new SpringApplicationBuilder(Bootstarp.class)
.web(WebApplicationType.NONE)
.run(args);
// 这里就可以获取到 用自定义的@Component 注解的bean了
Hello hello = context.getBean("hello", Hello.class);
System.out.println(hello);
}
}