• 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是单例模式,则直接从缓存中拿,如果没有则取,则直接

        进行创建。

        

        

  • 相关阅读:
    #网络流,最小割#洛谷 1344 [USACO4.4]追查坏牛奶Pollutant Control
    #线段树,倒序#CF356A Knight Tournament
    #错排,高精度#洛谷 3182 [HAOI2016]放棋子
    #KMP,dp#洛谷 3426 [POI2005]SZA-Template
    #差分约束系统,Spfa,SLF优化#Hdu 3666 THE MATRIX PROBLEM
    #min_max容斥#Hdu 4336 Card Collector
    #组合计数,卢卡斯定理#D 三元组
    #计数,记忆化搜索#C 连边方案
    #区间dp,离散#D 弱者对决
    #dp#C 公共子序列
  • 原文地址:https://www.cnblogs.com/chengyangyang/p/10844374.html
Copyright © 2020-2023  润新知