Spring注解驱动开发(三)—Bean的生命周期

  • Bean的生命周期 (Bean创建——初始化——销毁 )

  • 容器管理bean的生命周期

  • 可以自定义初始化和销毁的方法;容器在bean进行到当前生命周期的时候调用我们自定义的初始化和销毁的方法

  • 构造(对象创建):

  •      单实例:在容器启动的时候创建对象(调用对象的构造方法)
    
  •      多实例:容器启动的时候不创建对象,而是在获取的时候先创建对象供使用
    
  • 初始化:

  •    单实例:对象创建完成并且属性赋值完成,调用初始化的方法
    
  •    多实例:对象不会创建和初始化,获取之前才会创建和初始化
    
  • 销毁:

  •  单实例:容器关闭的时候会调用bean的销毁方法
    
  •  多实例:容器不会管理多实例bean,关闭的时候不会调用销毁的方法(如果想销毁只能手动调用销毁方法)
    

定义bean初始化和销毁的方法有四种方式
方式一:通过@Bean注解指定初始化和销毁方法(以Car类为例):指定init-method和destroy-method属性,分别对应Car类中的方法名

  • 在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    方式二:通过让Bean实现InitializingBean(定义初始化逻辑), 实现DisposableBean(定义销毁逻辑)
    *在这里插入图片描述
    在这里插入图片描述
    测试类省略

方式三:可以使用JSR250规范里定义的注解

  •          @PostConstruct:在bean创建完成并且属性赋值完成,来执行初始化
    
  •          @PreDestory:在容器销毁bean之前通知我们进行清理工作
    

*在这里插入图片描述
*在这里插入图片描述

测试类省略

方式四:通过实现BeanPostProcessor(bean的后置处理器):

  •          在bean初始化前后进行一些处理工作
    
  •          postProcessBeforeInitialization:初始化之前工作
    
  •          postPrecessAfterInitialization:初始化之后工作
    
  • 在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值