WEB开发网
开发学院软件开发Java Spring 框架的设计理念与设计模式分析 阅读

Spring 框架的设计理念与设计模式分析

 2010-06-14 00:00:00 来源:WEB开发网   
核心提示: 核心组件详解这里将详细介绍每个组件内部类的层次关系,以及它们在运行时的时序顺序,Spring 框架的设计理念与设计模式分析(3),我们在使用 Spring 是应该注意的地方,Bean 组件 前面已经说明了 Bean 组件对 Spring 的重要性,也就是每个 Bean 有可能有父 Bean,Au

核心组件详解

这里将详细介绍每个组件内部类的层次关系,以及它们在运行时的时序顺序。我们在使用 Spring 是应该注意的地方。

Bean 组件

前面已经说明了 Bean 组件对 Spring 的重要性,下面看看 Bean 这个组件式怎么设计的。Bean 组件在 Spring 的 org.springframework.beans 包下。这个包下的所有类主要解决了三件事:Bean 的定义、Bean 的创建以及对 Bean 的解析。对 Spring 的使用者来说唯一需要关心的就是 Bean 的创建,其他两个由 Spring 在内部帮你完成了,对你来说是透明的。

Spring Bean 的创建时典型的工厂模式,他的顶级接口是 BeanFactory,下图是这个工厂的继承层次关系:

图 4. Bean 工厂的继承关系
Spring 框架的设计理念与设计模式分析

查看原图(大图)

BeanFactory 有三个子类:ListableBeanFactory、HierarchicalBeanFactory 和 AutowireCapableBeanFactory。但是从上图中我们可以发现最终的默认实现类是 DefaultListableBeanFactory,他实现了所有的接口。那为何要定义这么多层次的接口呢?查阅这些接口的源码和说明发现,每个接口都有他使用的场合,它主要是为了区分在 Spring 内部在操作过程中对象的传递和转化过程中,对对象的数据访问所做的限制。例如 ListableBeanFactory 接口表示这些 Bean 是可列表的,而 HierarchicalBeanFactory 表示的是这些 Bean 是有继承关系的,也就是每个 Bean 有可能有父 Bean。AutowireCapableBeanFactory 接口定义 Bean 的自动装配规则。这四个接口共同定义了 Bean 的集合、Bean 之间的关系、以及 Bean 行为。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Spring 框架 设计理念

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接