bean的作用域

1.singleton,prototype, web环境下:request,session,gloab session

2.通过scope="" 来进行配置

3.对于singleton  spring容器只会创建一个共享实例,prototype则会创建不同的实例

bean的生命周期(bean自身的方法,bean级生命周期接口方法,容器级生命周期接口方法)

分为BeanFactory的生命周期和ApplicationContext的生命周期

1、对于BeanFactory

1、当通过getBean调用某一个bean的时候,首先看容器是否注册(不是bean实现接口,属于容器级生命周期方法)了InstantiationAwareBeanPostProcessor接口,如果注册了,将会调用postProcessBeforeInstantiation()方法。

2、然后实例化bean

3、调用InstantiationAwareBeanPostProcessor接口的postProcessAfterInstantiation()方法

4、设置属性,调用setter()

5、调用BeanNameAware的setBeanName()方法

6、调用BeanFactoryAware中的setBeanFactory()方法

7、调用InstantiationAwareBeanPostProcessor接口的postProcessBeforeInitialization()方法

8、 如果容器注册了BeanPostProcessor接口,调用该接口的postProcessBeforeInitialization()方法

9、调用InitializingBean接口的afterPropertiesSet()方法

10、调用init-method属性配置的方法

11、调用InstantiationAwareBeanPostProcessor接口的postProcessAfterInitialization()方法

12、调用BeanPostProcessor接口的postProcessAfterInitialization()方法

13、如果bean是单例的则把bean实例存入缓冲池由Spring容器继续关系bean的生命周期,否则交由该bean的调用则管理

14、调用DisposableBean接口的方法

15、通过destory-method属性配置的方法

要往ioc容器手动添加BeanPostProcessor的实现类  (ConfigurableBeanFactory)bf.addBeanPostProcessor(new MyBeanPostProcessor());

ApplicationContext中bean的生命周期和BeanFactoty的基本相同,在BeanFactoryAware接口后增加了一个 ApplicationContextAware接口的setApplicationContext()方法。

Spring bean的作用域和生命周期的更多相关文章

  1. Spring bean的作用域以及生命周期

    一.request与session的区别 request简介 request范围较小一些,只是一个请求. request对象的生命周期是针对一个客户端(说确切点就是一个浏览器应用程序)的一次请求,当请 ...

  2. Spring中Bean的作用域、生命周期

                                   Bean的作用域.生命周期 Bean的作用域 Spring 3中为Bean定义了5中作用域,分别为singleton(单例).protot ...

  3. Spring之Bean的作用域与生命周期

    在前面博客中提到容器启动获得BeanDefinition对象中有一个scope 属性.该属性控制着bean对象的作用域.本章节介绍Bean的作用域及生命周期,了解bean是怎么来的又怎么没的. 一.B ...

  4. 详解Spring中Bean的作用域与生命周期

    摘要:在利用Spring进行IOC配置时,关于bean的配置和使用一直都是比较重要的一部分,同时如何合理的使用和创建bean对象,也是小伙伴们在学习和使用Spring时需要注意的部分,所以这一篇文章我 ...

  5. Spring中bean的作用域与生命周期

    在 Spring 中,那些组成应用程序的主体及由 Spring IOC 容器所管理的对象,被称之为 bean.简单地讲,bean 就是由 IOC 容器初始化.装配及管理的对象,除此之外,bean 就与 ...

  6. Spring框架系列(三)--Bean的作用域和生命周期

    Bean的作用域 Spring应用中,对象实例都是在Container中,负责创建.装配.配置和管理生命周期(new到finalize()) Spring Container分为两种: 1.BeanF ...

  7. Spring中Bean的作用域和生命周期

    作用域的种类 Spring 容器在初始化一个 Bean 的实例时,同时会指定该实例的作用域.Spring3 为 Bean 定义了五种作用域,具体如下. 1)singleton 单例模式,使用 sing ...

  8. bean的作用域和生命周期

    一.Bean作用域 二.生命周期 其中,这个类实现各种接口重写各种方法,会按bean的声明周期按序执行: 其中,自定义的初始化和自定义销毁的方法不是实现接口重写,而是成员方法,并且在装配bean即在x ...

  9. [05] Bean的作用域和生命周期

    1.Bean的作用域和初始化时间 之前我们稍微提到过,Spring中管理的Bean,默认都是单例模式,这意味着你多次获取某个对象,得到的都是相同的对象.单例作用域的显性写法是scope属性,如下,这和 ...

随机推荐

  1. linux pam 控制模式

    工作类别(type).流程栈(stack)和控制模式(control) Linux-PAM 工作的"类别"(type) PAM 的具体工作主要有以下四种类别(type):accou ...

  2. Encrypting bootloader (程序BIN文件加密及在线升级)

    了解更多关于bootloader 的C语言实现,请加我QQ: 1273623966 (验证信息请填 bootloader),欢迎咨询或定制bootloader(在线升级程序). 在上一个博客随笔,我介 ...

  3. Java开发环境配置

    JDK下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html 安装:双击exe文件一直下一步就Ok了. 环境变 ...

  4. ssh访问控制,多次失败登录即封掉IP,防止暴力破解

    ssh访问控制,多次失败登录即封掉IP,防止暴力破解 一.系统:Centos6.3 64位 二.方法:读取/var/log/secure,查找关键字 Failed,例如(注:文中的IP地址特意做了删减 ...

  5. win10无法使用内置管理员账户打开应用怎么办

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System \UIPI 右边有个默认的项.将它的值改成1

  6. linux学习8 第八章 权限管理

    8.1 ACL权限 8.2 文件特殊权限 8.3 文件系统属性chattr权限 8.4 系统命令sudo权限 8.1 ACL权限 ACL权限简介与开启 查看与设定ACL权限 最大有效权限与删除ACL权 ...

  7. GridView控件RowDataBound事件中获取列字段途径

    今天不知道怎么回事怎么也找不到gridview列中的控件,关键是其为编辑时隐藏域中的控件,取值就很成问题了,网上搜了很到,找到这个比较经典的东东了,可能大家都知道,但很少对比整理到一起,有多种方法可以 ...

  8. Spring框架学习一

    Spring框架学习,转自http://blog.csdn.net/lishuangzhe7047/article/details/20740209 Spring框架学习(一) 1.什么是Spring ...

  9. html中表格的制作

    <table summar="给表格添加摘要".> <captioan> 给表格添加标题 </caption> <tr> <t ...

  10. cdnbest节点安装后连不上主控常见问题

    1. 查看节点程序是否启动 ps -aux |grep kangle 2. 如果节点程序都有启动,可查看日志,节点连接的是不是你帐号的uid帐号或者是否有其他报错信息 tail -f /var/log ...