Spring Bean Scope Singleton Prototype 相互引用说明

Spring  中默认都是singleton模式,getBean方法调用时都是返回的同一个实例.

    <bean id="beanA" class="com.profile.springtest.BeanA">
        <property name="beanB"><ref local="beanB"/></property>
    </bean>

    <bean id="beanB" class="com.profile.springtest.BeanB" scope="prototype">
    </bean>


如上的配置,虽然beanB配置的是prototype,但由于beanA是singleton,只实例化一次,所以beanA中的beanB每次使用的都是同一个实例,如果需要每次取到beanB的不同实例,可以使用spirng的lookup机制.

    <bean id="beanA" class="com.profile.springtest.BeanA" scope="prototype">
        <property name="beanB"><ref local="beanB"/></property>
    </bean>

    <bean id="beanB" class="com.profile.springtest.BeanB" >
    </bean>


如上的配置beanA配置为prototype,每次getBean("beanA"),获取都是不同的实例,但使用的beanB都是同一个实例.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值