Spring學習(二)FactoryBean工廠bean

Bean有兩種類型:①普通bean(即上一篇所講),②工廠Bean

FactoryBean返回的對象不是指定類的一個實例,其返回的是該工廠bean中的getObject方法所返回的對象

工廠bean必須實現 org.springframework.beans.factory.FactoryBean接口

package com.ztt.spring;

import org.springframework.beans.factory.FactoryBean;

public class MyFactory implements FactoryBean<Car>{

	@Override
	public Car getObject() throws Exception {
		Car car = new Car();
		car.setBrand("Audi");
		car.setPrice(199999.99);
		return car;
	}

	@Override
	public Class<?> getObjectType() {
		// TODO Auto-generated method stub
		return Car.class;
	}

	@Override
	public boolean isSingleton() {
		// TODO Auto-generated method stub
		return false;
	}
}

配置文件:

<bean id="factory" class="com.ztt.spring.MyFactory"></bean>

測試類:

public class testFactoryBean {
	public static void main(String[] args){
		ApplicationContext ac = new ClassPathXmlApplicationContext("factory-bean.xml");
		Object obj = ac.getBean("factory");
		System.out.println(obj);
	}
}

運行,返回MyFactory中創建的car對象

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章