关于SpringBean的创建方式

目录

一、前置

二、实例


一、前置

最近看了一下Spring的doCreateBean方法的实现,里面提到Spring会利用策略查看是否是工厂方法的bean,是则利用工厂直接构建。反之再选择对应参数的构造。

于是乎复习了一下SpringBean的构建方法,分为:

1.构造构建

2.工厂构建

3.静态工厂构建

二、实例

我们通过XML的方式来配置bean。




	
	
	

	
	
		
		
		
		
	
	
	
	
	
	

	
	

则有输出为:

public static void main(String[] args) {
		
		BeanFactory bf = new XmlBeanFactory(new ClassPathResource("/bean.xml"));
		//测试静态工厂
		Object bean2 = bf.getBean("staticBean");
		
		System.out.println(bean2);
	}
输出:
11:08:41.880 [main] DEBUG org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loaded 5 bean definitions from class path resource [bean.xml]
11:08:41.885 [main] DEBUG org.springframework.beans.factory.xml.XmlBeanFactory - Creating shared instance of singleton bean 'staticBean'

Bean [name=null, age=null]

其他的测试可以自己测试一下,都是一样的。

另外提一点:Spring检测bean是否是工厂方法构建的bean其中一种方式就是XML的factory-method属性标签。

你可能感兴趣的:(Spring篇)