Day 61 Spring Bean 生命周期

2022-07-01  本文已影响0人  小周爱吃瓜

实例化前->推断构造方法

Screen Shot 2022-07-01 at 9.33.27 AM.png Screen Shot 2022-07-01 at 9.45.44 AM.png
  1. 关于AutoWired Resource Value注解也是通过

postProcessProperties 这个后置处理来实现的.

  1. Aop也是基于初始化后实现的.

image.png
@Configuration
public class BeanDestoryAdapter implements DisposableBean,Runnable {

    private Bean bean;

    public BeanDestoryAdapter(Bean bean) {
        //传递Bean 进来,有三种Bean销毁的方式
        //入参三种,销毁只有一种
        this.bean = bean;
    }

    @Override
    public void run() {

    }

    @Override
    public void destroy() throws Exception {
        DisposableBean disposableBean = (DisposableBean) bean;
        disposableBean.destroy();

        //有destory方法 或者 xxx接口的Bean

        //determineDestroyMethod
    }
}

将实现了DisposableBean接口,AutoCloseable,或者标记@PreDestroy注解的方法通过Adapter做适配。

DisposableBean 下 Destory ,可能还有相互关联的bean,inner beans,也会从单例池中进行移除.

上一篇 下一篇

猜你喜欢

热点阅读