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

  • 相关阅读:
    Pycharm新建第一个Django项目
    Django的MTV模型
    TCP Retransmission 连接超时
    linux系统参数调优
    企业网站架构
    基于centos7,python3.7新建第一个Django项目
    运维日常错误总结(docker)
    docker常用技巧
    DHCP服务部署
    ssh远程登录故障解决方案
  • 原文地址:https://www.cnblogs.com/parkdifferent/p/10764837.html
Copyright © 2011-2022 走看看