Spring上下文和应用程序启动

时间:2014-06-03 22:45:50

标签: spring autowired spring-boot

我正在编写一个基于Spring Boot的应用程序。我试图了解执行以下任一操作之间的区别和含义:

AbstractApplicationContext context = new AnnotationConfigApplicationContext(AppContext.class);

SpringApplication.run(MySpringConfiguration.class, args);

特别是我对以下含义感兴趣:

  1. 自动装配。当我手动获取上下文中的具体对象时 即使我能看到他们,我的班级也不会自动装配 上下文,调试时。
  2. 测试。哪种方式更容易测试?

1 个答案:

答案 0 :(得分:1)

在两种情况下,自动装配和测试应该几乎相同(SpringApplication有一个伴随测试注释@SpringApplicationContext,但这是唯一的主要区别)。不同之处在于SpringApplication在vanilla应用程序上下文(嵌入式servlet容器,日志记录初始化,外部配置文件解析等)之上提供的功能。