读书人

Spring工场方式创建Bean实例

发布时间: 2012-09-18 16:21:42 作者: rapoo

Spring工厂方式创建Bean实例
很多情况下使用<bean id=”bean1” class=”…” />定义一个bean,这种定义方式Spring将会调用默认的无参数构造方法创建Bean实例。除此之外还可以使用工厂方式创建Bean实例,实现Bean创建与使用的分离,将Bean创建工作交由工厂来完成。
配置工厂Bean的三种方式。
抽象接口:


测试类:

“factory-bean”属性指定工厂Bean,”factory-method”属性指定工厂方法来取得Bean实例。

测试类:
public static void main(String[] args) {    ApplicationContext  ctx = new ClassPathXmlApplicationContext("bean-config.xml");    //不加 & 返回工厂的“产品”    IMusicBox musicbox = (IMusicBox)ctx.getBean("musicBox");    musicbox.play();    //加 & 返回工厂类实例    Object obj = ctx.getBean("&musicBox");      System.out.println(obj.getClass().getName()); }

实现FactoryBean接口的类不会被视为普通的Bean,Spring会自动检测,调用getObject方法获取Bean实例

读书人网 >软件架构设计

热点推荐