读书人

Spring IOC统制反转 3

发布时间: 2012-10-21 09:00:07 作者: rapoo

Spring IOC控制反转 3

3.1.3 通过容器完成依赖关系的注入
虽然 MoAttack 和LiuDeHua 实现了解耦,MoAttack 无须关注角色实现类的实例化工
作,但这些工作在代码中依然存在,只是转移到Director 类中而已。假设某一制片人想改
变这一局面,在选择某个剧本后,希望通过一个“海选”或者第三中介机构来选择导演、
演员,让他们各司其职,那剧本、导演、演员就都实现解耦了。

所谓媒体“海选”和第三方中介机构在程序领域即是一个第三方的容器,它帮助完成
类的初始化与装配工作,让开发者从这些底层实现类的实例化、依赖关系装配等工作中脱
离出来,专注于更有意义的业务逻辑开发工作。这无疑是一件令人向往的事情,Spring 就
是这样的一个容器,它通过配置文件或注解描述类和类之间的依赖关系,自动完成类的初
始化和依赖注入的工作。下面是Spring 配置文件的对以上实例进行配置的配置文件片断:
<?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">
<!--①实现类实例化-->
<bean id="geli" p:geli-ref="geli"/>

<!--②通过geli-ref建立依赖关系-->
</beans>
通过 new XmlBeanFactory(“beans.xml”)等方式即可启动容器。在容器启动时,Spring
根据配置文件的描述信息,自动实例化Bean 并完成依赖关系的装配,从容器中即可返回
准备就绪的Bean 实例,后续可直接使用之

读书人网 >开源软件

热点推荐