3.3 # Bean的作用域

singleton默认的作用域,使用singeton定义的Bean在Spring容器中只有一个Bean实例
prototypeSpring容器每次获取prototype定义的Bean,容器都将创建一个新的Bean实例
配置文件代码
<bean id="constructorInstance" class="instance.BeanClass" scope="singleton"/>或者
<bean id="constructorInstance" class="instance.BeanClass" />
package test;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import instance.BeanClass;

public class TestInstance {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		ApplicationContext xfc = new ClassPathXmlApplicationContext("applicationContext.xml");
		// 初始化Spring容器ApplicationContext,加载配置文件
		BeanClass b1 = (BeanClass) xfc.getBean("constructorInstance");
		// 测试构造方法实例化Bean
		System.out.println(b1 + b1.message);
		BeanClass b2 = (BeanClass) xfc.getBean("constructorInstance");
		System.out.println(b2 + b2.message);


	}

}

instance.BeanClass@49993335构造方法实例化Bean
instance.BeanClass@49993335构造方法实例化Bean

通过运行结果可以看出,使用id或者name获取Bean实例时,IoC容器仅返回同一个Bean实例。

	<bean id="constructorInstance" class="instance.BeanClass" scope="prototype"/>

instance.BeanClass@49993335构造方法实例化Bean
instance.BeanClass@20322d26构造方法实例化Bean

通过运行结果可以看出,使用id或者name获取Bean实例时,IoC容器返回两个不同的Bean实例。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值