码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Bean的生命周期


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

    2.设置Bean的属性(进行依赖注入,将依赖的Bean赋值到当前类的属性上)

    3.Bean的初始化

       各种通知:如BeanNameAware,BeanFactoryAware,ApplicationContextAware的接口方法;

       初始化前置方法;

       执行初始化方法(设置了就会执行,不设置不会执行)

              注解方式:@PostConstruct

              xml方式:init-method方法

       初始化后置方法。

    4.使用Bean

    5.销毁Bean

    我们可以将Bean的生命周期比作房子的生命周期:

    第一步要买地(实例化Bean,分配内存空间);

    第二步要盖房子(设置Bean的属性),但是此时还只是的毛坯房;

    第三步要装修(Bean的初始化):装修时要先通知装修公司(各种通知);装修前要进行些准备工作,比如买油漆,家具(初始化前置方法);装修公司进行装修(执行初始化方法);装修完后付钱(初始化后置方法);

    第四步要住进去(使用Bean);

    第五步产权到期要销毁(销毁Bean)。

    模拟Bean的生命周期:

    为什么先赋值属性再进行初始化:

    因为在Bean初始化时,可能会用到Bean里面的方法,如:

    所以要先赋值属性再进行初始化。

    @PostConstruct与@PreDestroy的作用:

          @PostConstruct:@PreDestroy初始化方法。

          @PreDestroy:@PreDestroy销毁方法

  • 相关阅读:
    leetcode 26.删除有序数组中的重复项
    图像处理算法大全(基于libyuv或IPP)----RGB32(ARGB)转成yuv420,RGB24,nv12,yuv422集合
    【AI视野·今日CV 计算机视觉论文速览 第268期】Mon, 16 Oct 2023
    硬分叉对以太坊生态有何影响,普通用户可以做些什么?
    聊聊 HTTP 性能优化
    前端学习--React(1)
    JAVA-异常
    uni-app的H5版本下载跨域问题
    #分支语句详解
    【老生谈算法】matlab实现CDS启发式算法源码——CDS启发式算法
  • 原文地址:https://blog.csdn.net/sjbz__/article/details/132710731
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号