美文网首页
SpringBoot | Spring IoC容器的学习(一)

SpringBoot | Spring IoC容器的学习(一)

作者: Ada54 | 来源:发表于2018-12-25 16:01 被阅读0次

    一、什么是 Spring IoC 容器

    IoC (Inversion of Controller,控制反转)是一种概念,一种设计模式

    这种设计模式并不是 Spring 或者 Java 独有的。含有 IoC 容器的框架有多种,除了 Spring,还有 Guice, Jboss 等

    所谓 控制反转,就是将 对象的控制权 由自己控制 转交于 容器控制。传统是使用  new 关键词来主动创建对象的,而在Spring中,是使用 IoC 容器来创建和管理对象的。我们把对象存储在 IoC 容器中,需要什么对象直接描述给容器,容器会将我们需要的对象创建好直接注入到代码中,而且也会将对象所需的外部资源(例如存在依赖关系的对象、常量数据)也注入到代码中。所以 IoC 模式也可描述为 DI(Dependency Injeciton,依赖注入)

    因此,Spring IoC 容器的用途:

    1)管理对象,包括 创建对象、发布对象、销毁对象等整个生命周期

    2)查询对象的依赖关系,注入依赖对象

    二、为什么要用 Spring IoC 容器

    对于Java初学者,我们一般会创建多个对象进行相互合作,来实现业务逻辑

    例如我们创建一个实现类

    无 IoC 容器的调用方式:

    B b = new B(new AInterface());  //需要在创建B实例之前生成A实例

    b. service();

    如果B类中调用不只A类一个,还有其他C、D、E等类,那么在使用B类时,还需要研究其他类的创建。这样就会出现对象之间的多重依赖性关系,使得代码维护起来比较费劲

    所以为了减低对象之间的耦合度,因此引入了 IoC 容器。将 A、B、C、D、E等类都放到容器中,如果 B 类需要 A类,IOC容器会主动创建一个对象A 注入到对象 B 需要的地方

    三、基于 XML 的 Spring IoC 简单案例

    step1:创建好一个 Spring 项目

    step2:创建一个User 类,实现一个简单的自我介绍功能

    step3:创建 bean.xml,进行 IoC 容器的配置,配置创建的对象

    在 resources 目录下右击选择 new -> XML Configuration File ->Spring Config,创建 bean.xml

    配置 User 对象


    step4:创建测试类 testIoCMain,使用 ApplicationContext 读取 bean.xml,将 User 对象配置到 IoC 容器中, 使用 getBean 方法获取到对应的对象

    step5:运行测试类 testIoCMain

    运行结果

    相关文章

      网友评论

          本文标题:SpringBoot | Spring IoC容器的学习(一)

          本文链接:https://www.haomeiwen.com/subject/sgkjkqtx.html