简述
Import注解在4.2之前只支持导入配置类 在4.2,@Import注解支持导入普通的java类,并将其声明成一个bean。 在 spring boot 的配置类中的使用比较多。
测试
@Import 的自动导入功能
1.一个配置类
代码语言:javascript复制@Configuration
@Import(ImportDemo.class)
public class ImportConfig {
}
2.一个普通没有加任何注解的类
代码语言:javascript复制public class ImportDemo {
public void doSomething () {
System.out.println("ImportDemo.doSomething()");
}
}
3.测试类
代码语言:javascript复制public class TestMain {
public static void main(String[] args) {
AnnotationConfigApplicationContext context =
new AnnotationConfigApplicationContext("com.springboot.importtest");
ImportDemo importDemo = context.getBean(ImportDemo.class);
importDemo.doSomething();
}
}
注掉配置类的 @Import ,再运行测试类,则报错。
证明,ImportDemo 是由 @Import 动态注入到 spring 容器中的