spring bean的三种管理方式·

1.无参构造函数

1.xml文件配置内容
    <!--无参构造函数-->
 <bean id="bean1" class="com.imooc.ioc.demo2.Bean1"></bean>
2.无参的构造函数
public class Bean1 {
public Bean1(){
System.out.println("bean1被实例化");
}
}
3.测试方法
public void demo1(){
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
Bean1 bean1=(Bean1)applicationContext.getBean("bean1");
}
//会输出结果: bean1被实例化



 2.静态工厂方法

1.Bean方法
public class Bean2 {

}


2.静态工厂方法

public class Bean2Factory {

    public  static Bean2 createBean2(){
        System.out.println("已经执行");
        return new Bean2();
    }
}

3.测试方法 
    public void demo2(){
        ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
        Bean2 bean2=(Bean2)applicationContext.getBean("bean2");
    }
4.配置文件
<bean id="bean2" class="com.imooc.ioc.demo2.Bean2Factory" factory-method="createBean2"></bean>
 

3.实例化工厂

1.Bean方法
public class Bean3 {

}

2.Bean工厂方法
public class Bean3Factory {
    public Bean3 createBean3(){
        System.out.println("实例工厂");
        return new Bean3();
    }

}

3.测试方法

  public void demo3(){
        ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
        Bean3 bean3=(Bean3)applicationContext.getBean("bean3");
    }
4.配置文件
<bean id="bean3Factory" class="com.imooc.ioc.demo2.Bean3Factory"></bean>
<bean id="bean3" factory-bean="bean3Factory" factory-method="createBean3"></bean>
 //先配置工厂类的bean 再调用

实例化工厂和静态工厂的区别: 静态工厂必须提供静态方法

原文地址:https://www.cnblogs.com/qiujichu/p/10806214.html