Spring中Bean的配置方式之FactoryBean
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring中Bean的配置方式之FactoryBean相关的知识,希望对你有一定的参考价值。
Spring 中有两种类型的 Bean, 一种是普通Bean, 另一种是工厂Bean, 即FactoryBean.
工厂 Bean 跟普通Bean不同, 其返回的对象不是指定类的一个实例, 其返回的是该工厂 Bean 的 getObject 方法所返回的对象
相关代码:
Car.java
private String brand; private double price;
CarFactoryBean.java
public class CarFactoryBean implements FactoryBean<Car>{ private String brand; public void setBrand(String brand) { this.brand = brand; } //返回bean的对象 @Override public Car getObject() throws Exception { return new Car(brand,500000); } //返回bean的类型 @Override public Class<?> getObjectType() { return Car.class; } @Override public boolean isSingleton() { return true; } }
bean-factorybean.xml
<!-- 通过FactoryBean来配置bean的实例 class:指向FactoryBean的全类名 property:配置的时FactoryBean的属性 但实际返回的实例却是FactoryBean的getObject()方法的实例 --> <bean id="car" class="com.yslf.factorybean.CarFactoryBean"> <property name="brand" value="BMW"></property> </bean>
以上是关于Spring中Bean的配置方式之FactoryBean的主要内容,如果未能解决你的问题,请参考以下文章