Spring框架--Bean的作用域

Bean在Spring中有不同的作用域,如singleton(单例)、prototype(原型)、request、session和application。每个作用域定义了Bean的实例化和共享规则。此外,文章详细阐述了Spring容器启动时Bean的创建、注册和装配过程,以及Bean的生命周期,包括实例化、属性设置、初始化和销毁等阶段。
摘要由CSDN通过智能技术生成

Bean的作用域:Bean在整个Spring框架(项目)中的某种行为模式。

作用域定义:

限定程序中变量的可用范围叫做作用域,

Bean的作用域是指Bean在Spring整个框架中的某种行为模式,比如singleton单例作用域,就表示Bena在整个Srping中只有一份,他是全局共享,当该值被修改,则后面读取到的就是修改之后的值。

Bean的作用域分类:

1.singleton:单例作用域【默认作用域】

无状态的Bean使用该作用域【当调用该类只是使用而不修改的时候】

2.prototype:原型作用域【每次对该作用域下的Bean的请求都会创建新得实例--》深克隆】

3.request:请求作用率【每一次http请求都会创建新得Bean实例】

场景:一次请求和响应得共享Bean  限定SpringMVC中使用

4.session:会话作用域【一次会话共享Bean】

5.applicatin:全局作用域【在一个http servlet Context中定义一个Bean实例】

Bean作用域得设置

@Scope("prototype")-->设置原型作用域

@Bean

Spring得执行流程

启动Spring容器-》实例化Bean(分配内存空间,从无到有)-》Bean注册到Spring中(存操作)-》将Bean装配到需要得类中(取操作)

1.启动容器(启动项目)

2.读取配置文件,初始化

  a)使用xml直接注册bean

  b)配置bean根(扫描)路径

3.将bean存储到spring中,通过类注解进行扫描和装配

4.将bean从spring中读取出来,装配到相应得类

Bean得生命周期

1.实例化(对应JVM中的“加载”【从无到有,将字节码转换成内存中的对象,只是分配了内存】

2.设置属性(Bean注入和装配)

3.初始化

a)各种通知

b)初始化的前置工作

c)进行初始化工作【使用注解@PostConstruct初始化、使用(xml)init-method初始化】

d)初始化的后置工作

4.使用Bean

5.销毁Bean

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值