
使用ApplicationContext/BeanFactory实现类创建ioc容器,并获取Bean对象
ApplicationContext:
在创建ioc容器时,创建对象采取的方式采用的是立即加载的方式,只要一读取配置文件,马上就会创建配置文件中配置的对象,Bean对象是单例的
ApplicationContext实现类:
ClassPathXmlApplicationContext:
加载类路径下的配置文件(Bean.xml在classes下)
1 2 3 4 |
//先获取spring的ioc容器对象
ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
//并且根据id获取对象
UserDao dao = ac.getBean("userDao", UserDao.class);
|
FileSystemXmlApplicationContext:
加载磁盘任意路径下的配置文件 (Bean.xml在电脑的任意位置)
1 2 3 |
ApplicationContext ac = new FileSystemXmlApplicationContext("C:\Users\Desktop\bean.xml");
//并且根据id获取对象
UserDao dao = ac.getBean("userDao", UserDao.class);
|
AnnotationConfigApplicationContext:
读取注解创建容器
BeanFactory:
在创建ioc容器时,创建对象采取的方式是采用延迟加载的方式,什么时候根据id获取对象了,什么时候才真正的创建对象,Bean对象是多例的
1 2 3 |
BeanFactory bf = new XmlBeanFactory(new ClassPathResource("bean.xml"));
UserService serivce =(UserService)bf.getBean("userService");
System.out.println(serivce);
|




近期评论