zoukankan      html  css  js  c++  java
  • Spring Bean's life

      In contrast, the lifecycle of a bean in a Spring container is more elaborate. It’s
    important to understand the lifecycle of a Spring bean, because you may want to take
    advantage of some of the opportunities that Spring offers to customize how a bean is
    created. Figure 1.5 shows the startup lifecycle of a typical bean as it’s loaded into a
    Spring application context.

      

     As you can see, a bean factory performs several setup steps before a bean is ready to
    use. Let’s break down figure 1.5 in more detail:
      1 Spring instantiates the bean.
      2 Spring injects values and bean references into the bean’s properties.
      3 If the bean implements BeanNameAware, Spring passes the bean’s ID to the set-
    BeanName() method.
      4 If the bean implements BeanFactoryAware, Spring calls the setBeanFactory()
    method, passing in the bean factory itself.
      5 If the bean implements ApplicationContextAware, Spring calls the set-
    ApplicationContext() method, passing in a reference to the enclosing application
    context.
      6 If the bean implements the BeanPostProcessor interface, Spring calls its post-
    ProcessBeforeInitialization() method.
      7 If the bean implements the InitializingBean interface, Spring calls its after-
    PropertiesSet() method. Similarly, if the bean was declared with an initmethod,
    then the specified initialization method is called.
      8 If the bean implements BeanPostProcessor, Spring calls its postProcess-
    AfterInitialization() method.
      9 At this point, the bean is ready to be used by the application and remains in the
    application context until the application context is destroyed.
      10 If the bean implements the DisposableBean interface, Spring calls its
    destroy() method. Likewise, if the bean was declared with a destroy-method,
    the specified method is called.
     Now you know how to create and load a Spring container. But an empty container
    isn’t much good by itself; it doesn’t contain anything unless you put something in it.
    To achieve the benefits of Spring DI, you must wire your application objects into the
    Spring container. We’ll go into bean wiring in more detail in chapter 2.

    参考文献

      Spring in Action

  • 相关阅读:
    Spring AOP前置通知实例说明AOP相关概念
    什么是面向切面编程AOP
    关于IOC容器的一些个人理解
    在.Net Core WebAPI下给Swagger增加导出离线文档功能
    .Net Core ORM选择之路,哪个才适合你
    真香.小程序云开发(时光邮局小程序)
    Cordova的安装与配置
    JS三座大山再学习(三、异步和单线程)
    JS三座大山再学习(二、作用域和闭包)
    JS三座大山再学习(一、原型和原型链)
  • 原文地址:https://www.cnblogs.com/parkdifferent/p/10764837.html
Copyright © 2011-2022 走看看