1 如何向Spring容器中注入组件?
向Spring容器中注入组件的方法大概有4种:
- 包扫描+组件注解标注(@Component、@Controller、@Service、@Repository);
- @Bean,导入第三方包中的组件;
- @Import向Spring容器中快速导入一个组件;
- 使用Spring提供的FactoryBean(工厂bean)。
第一种和第二种都比较熟悉,在项目中使用的比较多,主要介绍下第三种和第四种。
2 @Import详解
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documentedpublic @interface Import {
/**
* {@link Configuration @Configuration}, {@link ImportSelector},
* {@link ImportBeanDefinitionRegistrar}, or regular component classes to import.
*/
Class<?>[] value();
}
从@Import注解的源码可以看出,@Import只能注解在类上,并且有3种使用方式:
- 直接填class数组方式<