早期的网络系统设计经常采用三层结构。最常见的结构,就是表示( presentation )层 , 领域( domain )层 , 以及基础架构( infrastrUCture )层。
n层结构的提出是为了适应当前B/S模式开发WEB Application的需要而提出的。传统的Brown模型是指:表示层( Presentation ),控制 / 中介层( Controller/Mediator ),领域层( Domain ) , 数据映射层( Data Mapping ) , 和数据源层( Data Source )。它其实就是在三层架构中增加了两个中间层。控制 / 中介层位于表示层和领域层之间,数据映射层位于领域层和基础架构层之间。
J2EE规范提出了自己的n-tiers结构。
(图片较大,请拉动滚动条观看) 下表是几种模型的对照
ISA
Brown
J2EE 层
对应程序部分
表示层
表示层
客户层
浏览器 Html 页面, XSL, 手机客户端等
服务器表示层
jsp 及 ActionForm ,XML
控制/中介层
Controller 控制器及 Action
领域层
领域层
业务层
Javabeans / SessionBean /Session Facade
数据映射层
整合层
EntityBean / JDO / Hibernate / JDBC
数据层
数据源层
资源层
RDBMS 数据库 J2EE的基本原则之一,是使得各个层的实现解除耦合或耦合最小化。最终实现可以任意的切换某个层的实现。
例如,在数据映射层,可以采用EJB的BMP,CMP,也可以采用Hibernate等O/RMapping,或者采用JDO。这由部署的环境来决定。
|