package com.test;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.test.service.UserService;
public class TestMain {
public static void main(String[] args) {
/**
* ApplicationContext代表spring容器,而ClassPathXmlApplicationContext是它的一个实现,它从类路径下读取相应的
* xml 元数据配置,并初始化容器。其中allbean.xml是相应的元数据配置
*/
AbstractApplicationContext context = new ClassPathXmlApplicationContext("allbean.xml");
context.registerShutdownHook();
//从容器中获取名称 为 user 的 userService 对象,这个名称在配置文件之后配置。
UserService userService = context.getBean("user", UserService.class);
UserService userService1 = context.getBean("user1", UserService.class);
UserService userService2 = context.getBean("user2", UserService.class);
UserService userService3 = context.getBean("user3", UserService.class);
UserService userService4 = context.getBean("user4", UserService.class);
UserService userService5 = context.getBean("user5", UserService.class);
System.out.println(userService.getUser());
System.out.println("---------111---------");
System.out.println(userService1.getUser());
System.out.println("--------222---------");
System.out.println(userService2.getUser());
System.out.println("--------333---------");
System.out.println(userService3.getUser());
System.out.println("--------444---------");
System.out.println(userService4.getUser());
System.out.println("--------555---------");
System.out.println(userService5.getUser());
System.out.println("--------testValue---------");
System.out.println(context.getBean("testValue"));
System.out.println("--------getService---------");
UserService getService = context.getBean("getService", UserService.class);
System.out.println(getService.getUser());
System.out.println(getService.getUser());
//可以和传统方式相比较:
// UserService user = new UserServiceIml();
// UserDao dao = new UserDaoImp();
// ((UserServiceIml)user).setUserDao(dao);
//
// System.out.println(user.getUser());
}
}