zoukankan      html  css  js  c++  java
  • spring揭密学习笔记(3)-spring ioc容器:掌管大局的IoC Service Provider

    1.IOC service Provider的概念。
    IoC Service Provider在这里是一个抽象出来的概念,它可以指代任何将IoC场景中的业务对象绑定到一起的实现方式。它可以是一段代码,也可以是一组相关的类,甚至可以是比较通用的IoC框架或者IoC容器实现。

    2.IOC service provider的两项职责

    IoC Service Provider的职责相对来说比较简单,主要有两个:业务对象的构建管理和业务对象间依赖绑定。

    业务对象的构建管理。

    在IoC场景中,业务对象无需关心所依赖的对象如何构建如何取得,但这部分工作始终需要有人来做。所以,IoC Service Provider需要将对象的构建逻辑从客户端象①那里剥离出来,以免这部分逻辑污染业务对象的实现。

    业务对象间的依赖绑定。

    对于IoC Service Provider来说,这个职责是最艰巨也是最重要的,这是它的最终命之所在。如果不能完成这个职责,那么,无论业务对象如何的“呼喊”,也会得到依赖对象的任何响应(最常见的倒是会收到一个NullPointerException)。IoC Service Provider通过结合之前构建和管理的所有业务对象,以及各个业务对象间可以识别的依赖关系,

    3.IOC service provider的三种管理对象间的依赖关系方式
    运筹帷幄的秘密——IoC Service Provider 如何管理对象间的依赖关系
    直接编码方式
    当前大部分的IoC容器都应该支持直接编码方式,比如PicoContainer①、Spring、Avalon等
    配置文件方式
    这是一种较为普遍的依赖注入关系管理方式。像普通文本文件、properties文件、XML文件等,
    元数据方式
    这种方式的代表实现是Google Guice,
    当然,注解最终也要通过代码处理来确定最终的注入关系,从这点儿来说,注解方式可以算作编
    码方式的一种特殊情况。

  • 相关阅读:
    Binary Trees
    [POJ] String Matching
    Tree
    Maxmum subsequence sum problem
    poj 2104 划分树
    poj 2486 树形dp
    poj 1848 树形dp
    hdu 4578 线段树
    hdu 4585 set应用
    hdu 2412 树形DP
  • 原文地址:https://www.cnblogs.com/shoshana-kong/p/10719664.html
Copyright © 2011-2022 走看看