• Spring Bean生命周期|分析|图解


    1. 当服务启动时SpringApplication.run会执行spring的刷新上下文操作
    2. 刷新方法里边会根据BeanDeflnitionNames,getBean没有就会利用反射机制 实例化bean
    3. 实例化完成会执行属性填充方法初始化bean
    4. 初始化完成就可以被使用,使用有对应的前置处理和后置处理
    5. 在容器销毁的时候对应销毁,如果bean使用了destroy-method属性声明了销毁方法则该方法被调用

    1. 图解spring IOC容器的核心实现原理 上图
    2. spring的扩展实现一:BeanFactoryPostProcessor接口详解 对BeanDefinition的一个扩展
    3. spring的扩展实现二:BeanPostProcessor接口详解 对Bean对象完成扩展
    4. 必知必会的13个Bean声明周期处理机制
      1. 实例化bean对象->初始化设置对象属性->检查Aweare相关接口并设置相关依赖-BeanPostProcessor前置处理->检查是否是InitializingBean以决定是否调用afterPropertiesSet方法->检查是否配置有自定义的init-method->BeanPostProcessor后置处理->注册必要的Destruction相关回调接口->使用中->是否实现DisposableBean接口->是否配置有自定义的destroy方法

    1. Spring Bean实现Aware接口的意义
    1. Aware是根接口没有任何方法 在原有的bean标准化流程扩展,可以解析注解 例如:@PostContruct、@PreDestroy、@Autowired、@Value
      • Aware系列接口,主要用于辅助Spring bean访问Spring容器 Aware是“意识到的,察觉到的”的意思,实现了Aware系列接口表明:可以意识到、可以察觉到)
    2. BeanFactory和FactoryBean的接口对比
      1. 相同点:都是用来创建对象的
      2. 不同点:
        1. BeanFactory是Bean工厂,创建的时候是标准化流程
        2. FactoryBean是私人订制,实现接口重写其getObject方法,想怎么创建就怎么创建对象 (new、反射、动态代理)

  • 相关阅读:
    排序方法总结
    计算属性和监听器
    使用云服务器作为跳板机器远程转发内网机器端口的jupyter服务
    AI新时代,新华三存储新思考
    图像显示在对话框上的一些问题
    操作系统学习
    ES6基础总结(上)
    C# 实现数独游戏
    音视频封装demo:将h264数据和aac数据封装(mux)成TS文件(纯手工,不依赖第三方开源库)
    Rabbitmq基本使用以及与springboot集成简单示例
  • 原文地址:https://blog.csdn.net/qq_41453424/article/details/126922107