Spring中的FactoryBean

package org.springframework.beans.factory;

/**
 * 如果一个类实现了该接口,则这个类是一个具体工厂类,这个具体工厂类是用来生成类型为T的bean。
 * 
 * If a bean implements this interface, it is used as a factory for an object to expose, not directly as a bean  instance that will be exposed itself.
 *
 * FactoryBeans can support singletons and prototypes, and can either create objects lazily on demand or eagerly on startup.
 */
public interface FactoryBean<T> {

	/**
	 * 获取一个类型为T的bean
	 * 
	 * Return an instance (possibly shared or independent) of the object managed by this factory.
	 * <p>As with a {@link BeanFactory}, this allows support for both the Singleton and Prototype design pattern.
	 */
	T getObject() throws Exception;

	/**
	 * Return the type of object that this FactoryBean creates, or {@code null} if not known in advance.
	 * <p>This allows one to check for specific types of beans without instantiating objects, for example on autowiring.
	 */
	Class<?> getObjectType();

	/**
	 * Is the object managed by this factory a singleton? That is, will {@link #getObject()} always return the same object
	 */
	boolean isSingleton();

}



	

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值