zoukankan      html  css  js  c++  java
  • 攻城狮在路上(贰) Spring(二)--- Spring IoC概念介绍

    一、IoC的概念
      IoC(控制反转)是Spring容器的核心。另一种解释是DI(依赖注入),即让调用类对某一个接口的依赖关系由第三方注入,以移除调用类对某一个接口实现类的一览。
      定义如此,由此可见,在面向接口编程的情况下,IoC可以很好的实现解耦,可以以配置的方式为程序提供所需要的接口实现类。
      在实际程序开发中,我们只需要提供对应的接口及实现类,然后通过Spring的配置文件或者注解完成对依赖类的装配。
    二、IoC的类型
      1、通过构造函数
        此种方式的缺点是,在构造函数中注入之后一般会作为一个私有变量存储在调用类内,而调用类不见得每一个方法都需要该注入类。
      2、属性注入
        这是最为常见的方法,通过Setter方法实现。
      3、接口注入
        将调用类所有依赖注入的方法抽取到一个接口中,调用类通过实现该接口提供相应的注入方法。缺点是增加了一个接口。不提倡使用这种方式。
    三、通过容器完成依赖关系注入
      Spring通过配置文件或注解描述类和类之间的依赖关系。下面是一个入门的Demo实例:

    <?xml version="1.0" encoding="UTF-8" ?>
    <beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:p="http://www.springframework.org/schema/p"
      xsi:schemaLocation="http://www.springframework.org/schema/beans 
      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
      http://www.springframework.org/schema/context 
      http://www.springframework.org/schema/context/spring-context-3.0.xsd>
      <bean id="car" class="com.xxx.Car"/>
      <bean id="boss" class="com.xxx.Boss">
        <property name="car">
          <ref bean="car"></ref>
        </property>
      </bean>
    </beans>

      然后通过new XmlBeanFactory("beans.xml");等方式即可启动容器,在启动容器时,Spring会根据配置文件的描述信息,自动实例化Bean并且完成依赖关系的装配。

  • 相关阅读:
    python按行读取并替换
    python 爬取网页内容
    file.write(str),file.writelines(sequence)
    04Spring_bean 后处理器(后处理Bean),BeanPostProcessor ,bean创建时序,动态代理
    03Spring_bean的创建和作用域以及生命周期
    02Spring_Ioc和DI介绍
    01Spring_基本jia包的导入andSpring的整体架构and怎么加入日志功能
    错题724-java
    05传智_jbpm与OA项目_部门模块中增加部门的jsp页面增加一个在线编辑器功能
    04传智_jbpm与OA项目_部门模块改进_直接在BaseAction中实现ModelDriven<T>
  • 原文地址:https://www.cnblogs.com/tq03/p/3791694.html
Copyright © 2011-2022 走看看