spring 三种实例化bean的方法

1.构造器实例化

<bean id="person1" class="com.mengma.instance.constructor.Person1" />

直接用相应的类Person1去实例化person1。

2.静态工厂实例化

package com.mengma.instance.static_factory;

public class MyBeanFactory {
    // 创建Bean实例的静态工厂方法
    public static Person1 createBean() {
        return new Person1();
    }
}

  <bean id="person2" class="com.mengma.instance.static_factory.MyBeanFactory"  factory-method="createBean" />

  指定是用哪个工厂类的哪个方法进行实例化。

3.实例工厂实例化

    

package com.mengma.instance.factory;

public class MyBeanFactory {
    public MyBeanFactory() {
        System.out.println("person3工厂实例化中");
    }

    // 创建Bean的方法
    public Person3 createBean() {
        return new Person3();
    }
}

 

<!-- 配置实例工厂 -->

<bean id="myBeanFactory" class="com.mengma.instance.factory.MyBeanFactory" />

<!-- factory-bean属性指定一个实例工厂,factory-method属性确定使用工厂中的哪个方法 -->

<bean id="person3" factory-bean="myBeanFactory" factory-method="createBean" />

 用工厂类中的普通成员函数进行实例化。首先,配置用构造器实例化一个工厂bean,在用这个工厂bean中的方法去实例化person3

备注:class属性的值都是包名+类名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值