早期的网络系统设计常常采用三层结构。最常见的结构,就是表示(
presentation
)层
,
领域(
domain
)层
,
以及基础架构(
infrastructure
)层。
n层结构的提出是为了适应当前B/S模式开发WEB
Application的需要而提出的。传统的Brown模型是指:表示层(
Presentation
),控制
/
中介层(
Controller/Mediator
),领域层(
Domain
)
,
数据映射层(
Data
Mapping
)
,
和数据源层(
Data
Source
)。它其实就是在三层架构中增加了两个中间层。控制
/
中介层位于表示层和领域层之间,数据映射层位于领域层和基础架构层之间。
J2EE规范提出了自己的n-tiers结构。
下表是几种模型的对照
J2EE的基本原则之一,是使得各个层的实现解除耦合或耦合最小化。最终实现可以任意的切换某个层的实现。
例如,在数据映射层,可以采用EJB的BMP,CMP,也可以采用Hibernate等O/RMapping,或者采用JDO。这由部署的环境来决定。