Bean作用域和生命周期(+lombok安装)

1.Bean作用域的定义:Bean在Spring容器中的行为模式

lombok安装:

	<dependency>
		<groupId>org.projectlombok</groupId>
		<artifactId>lombok</artifactId>
		<version>1.18.26</version>
		<scope>provided</scope>
	</dependency>

2.Spring Bean作用域(Scope):

        单例模式(singleton):因为Spring在保证功能的同时还要保证性能,默认为单例模式;

                通常无状态的Bean使用该作⽤域。⽆状态表示Bean对象的属性状态不需要更新;

        原型模式(prototype):每次对该作⽤域下的Bean的请求都会创建新的实例;

        请求作用域(request):每次http请求会创建新的Bean实例,适用于Spring MVC;

        会话作用域(session):每次session会话共享bean,适用于Spring MVC;

        全局作用域(application):一个http servlet context 中共享一个bean,Spring MVC;

        HTTP WebSocket 作用域(websocket):网络长连接,只适用于Spring WebSocket;

3.Bean作用域的设置:

4.Spring的行流程:
        启动容器——跟据配置完成Bean的初始化——注册Bean对象到容器中——装配Bean的属性

5. Bean生命周期:

        

        Bean对象从诞生到销毁的整个生命过程;

Bean 的生命周期分为以下 5 部分:

1.实例化 Bean(为 Bean 分配内存空间)

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

3.Bean 初始化

  • 实现了各种 Aware 通知的方法,如 BeanNameAware、BeanFactoryAware、ApplicationContextAware 的接口方法;
  • 执行 BeanPostProcessor 初始化前置方法;
  • 执行 @PostConstruct 初始化方法,依赖注入操作之后被执行;
  • 执行自己指定的 init-method 方法(如果有指定的话);
  • 执行 BeanPostProcessor 初始化后置方法。

4.使用 Bean

5.销毁 Bean

其中 @PostConstruct 是构造方法,在初始化阶段执行,而 @PreDestroy 会在消耗之前执行。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值