zoukankan      html  css  js  c++  java
  • Spring中Bean的生命周期

    单例对象的生命周期和多例对象的生命周期不一样。

    单例对象:

    单例对象单例对象的生命周期与容器的生命周期相同

    出生读取完配置文件,即创建容器,只要容器一创建,就马上创建对象

    活着只要容器还在,对象一直活着

    死亡容器销毁,则对象消亡

    现在来测试一下,在类中添加两个方法:

     

    注意:此时是单例对象。

     

     结果为:

    只要执行完第一行代码,就立即创建和初始化对象。当关闭容器时,对象就销毁了。

    如果是多例对象,即使关闭了容器,对象也没有销毁。

    多例对象:

     

     结果:

    发现只有在使用(获取)的时候才会初始化,这与刚才采用BeanFactory时看到的现象是一样的,如果改成singleton,只要读取完配置文件,马上就初始化对象了。

    Spring是非常智能的框架,它可以感知到对象的作用范围是单例还是多例,从而来选择什么时候创建对象,即对象创建的时机是立即还是延迟,单例对象就是立即,多例对象就是延迟。

    借助bean标签的两个属性init-method和destroy-method

    多例对象:(仅作了解)

    出生当我们使用(获取)对象时,spring框架为我们创建和初始化对象

    活着对象只要是在使用过程中就一直活着

    死亡当对象长时间不用,且没有别的对象引用时,由java的垃圾回收器回收

    Spring不负责多例对象的销毁。

  • 相关阅读:
    预备作业03
    预备作业02
    预备作业01
    20162319莫礼钟 2016-2017-2 《程序设计与数据结构》第1周学习总结
    预备作业03
    20162319 莫礼钟 预备作业02
    20162319莫礼钟 预备作业01
    20162307 实验一 实验报告
    20162307 第4周学习总结
    20162307 第3周学习总结
  • 原文地址:https://www.cnblogs.com/zwh0910/p/14618130.html
Copyright © 2011-2022 走看看