zoukankan      html  css  js  c++  java
  • sping IOC的设计原理和高级特性

      1. IOC 是Spring的内核,字面意思是控制反转,并提出了DI依赖注入的概念。

      2.Spirng 容器的设计中,一个是实现BeanFactory 接口的简单饿汉容器,另外一个是比较高级的ApplicationContext 应用上下文,在这基础上增加了许多面向

       框架的特性。

      BeanFactory 的使用

      3.spring 定义了BeanDefinition 来管理基于Spring应用的各种对象,来管理管理他们之间的依赖关系。

      4.在BeanFactory 有三个子类:

        ListableBeanFactory(bean 的集合)、HierarchicalBeanFactory(bean之间的关系) 和AutowireCapableBeanFactory(bean的行为)。他们主要是问

        了区分在Spring操作对象的过程中,对对象数据访问的限制。DefaultListableBeanFactory(实现了上面所有的接口)

      5.在BeanFactory 的基础上面,spring提供了一系列容器的实现供开发者使用,XmlBeanFactory 继承DefaultListableBeanFactory,它是一个以读取xml文件方式定义

        BeanDefinition 的IOC的容器

      ApplicationContext 上下文  他除了提供IOC的基本功能之外,还提供了一些附加功能,实现国际化、访问资源、支持应用事件、。

      6. 依赖注入的时间

        用户第一次索要Bean的时候触发依赖注入,当用户在bean中配置lazy-init,在容器解析注册bean 的时候,触发依赖注入。

      7. 在BeanFactory中我们看到getBean()函数,它的具体实现在AbstractBeanFactory中。如果容器创建的bean是单例模式,则直接从缓存中拿,如果没有则取,则直接

        进行创建。

        

        

  • 相关阅读:
    C 语言指针小结
    NOIP2012 复赛考生须知!
    2012 NOIP 初赛复习指导
    16元的纸币
    记一次社会化的钓鱼攻击
    福州大学ACM代表队获36届ACMICPC全球总决赛第18名
    福州教育相关教育资源介绍
    世界末日:科普很重要啊~~~
    201212信息学奥林匹克竞赛,新生招募
    模拟人脑:这个事儿,闹大了
  • 原文地址:https://www.cnblogs.com/chengyangyang/p/10844374.html
Copyright © 2011-2022 走看看