2009年5月1日星期五

JavaEEDesign_002:Java EE 设计模式概览(摘录+整理)

目前,公认的Java EE 设计模式一共有13个,分成三个大类。

1. 表示层模式:如何创建结构合理的表示层,明确每个组件的角色使命(1)截获过滤器 Intercepting Filter
(2)前端控制器 Front Controller:处理请求的初始点,集中处理请求,用派遣器委托到下一视图。用帮助器分解不同功能(验证、授权)到不同模块。
(3)视图帮助器 View Helper
(4)复合视图 Composite View
(5)服务/工人 Servie-to-Worker:派遣器用帮助器将数据到视图中(先获取数据,再显示视图)。控制器的责任更大些。
(6)派遣视图 Dispatcher View:派遣器用帮助器将数据到视图中(先显示视图,再获取数据)。

2. 业务层模式:如何使用EJB 实现业务逻辑
(1)业务代理 Business Delegate
JNDI是Java EE应用中常用的资源定位机制,客户机需要知道要使用和查找的资源,还是有些麻烦。
使用业务代理模式后,客户机不再直接跟JNDI打交道,而是交给业务代理打点一切,客户机完全感觉不到是在做复杂地远程调用。

(2)值对象 Value Object
(3)会话门面 Session Facade一个Facade代表一组相关的用例,一个粗粒度的方法映射一个用例。
客户机(一般为业务代理)对Facade的调用虽然为远程调用,但Facade对其它EJB的调用可以使用EJB容器优化,如本地接口。
消息门面 Message Facade也是一种Facade模式,只不过是用消息驱动Bean来实现的,可以异步执行。
(4)值对象装配器 Value Object Assembler
(5)值列表处理器 Value List Handler
(6)服务定位器 Service Locator。

3. 数据层模式:如何抽象不同数据源
(1)数据访问对象 Data Access Object
接下来,我们就逐个介绍每个模式,建议首先阅读Java 设计模式》,有助于理解Java常见的设计模式。

没有评论: