总结:直接通过@Configuration类启动容器有两种方法。
方法一:AnnotationConfigApplicationContext类通过标注@Configuration的Java类启动Spring容器。
方法二:AnnotationConfigApplicationContext支持通过编码的方式加载多个@Configuration配置类,然后通过刷新容器因应用这些配置类。
package com.study.spring.bean.javaClassBean; import java.util.List; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class TestJavaClassBean { public static void main(String[] args) { //方法一:AnnotationConfigApplicationContext类通过标注@Configuration的Java类启动Spring容器。 //ApplicationContext context = new AnnotationConfigApplicationContext(SpringBeansConfig.class); AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); //方法二:AnnotationConfigApplicationContext支持通过编码的方式加载多个@Configuration配置类,然后通过刷新容器因应用这些配置类。 //注册一个活或多个@Configuration配置类 context.register(SpringBeansConfig.class); //继续注册@Configuration配置类 //context.register(SpringConfig.class); //刷新容器以应用这些注册的配置类 context.refresh(); UserService userService = context.getBean(UserService.class); List<User> userList = userService.queryUserList(); if (null != userList) { for (User user : userList) { System.out.println(user); } } else { System.out.println("userList is null..."); } context.destroy(); } }