业务层模式:
业务代表:Business Delegate。封装对业务服务的访问,隐藏服务层具体实现细节,主要为降低客户端和服务层之间的耦合。除了隐藏服务细节、处理服务异常等基础功能以外,还可以做服务的缓存。业务代表是客户端的直接客户,起到客户端业务抽象层的作用,而业务代表的另一头,常常连接着会话门面。
比较常用的情况就是在某种远程连接和业务处理的基础上,使用业务代表把这些细节统统包装起来,给内部提供的模型也好API也好,都是和外部接口相异的。比如一个系统中对于展现的内容数据的同步,以及订购、使用等业务流程,都由SOAP消息载体来协助完成,那么封装起SOAP消息这种底层行为的PCMP模块,对其上内部组件暴露的都是系统中通用的模型和API,将SOAP定义的模型和相应的同步、校验和通知行为等隔离开了。
服务定位器:Service Locator。封装对服务和组件的寻址。在系统,尤其是分布式系统中,服务通常被设置为可插接的,通过某种方式挂在服务总线上,寻求某服务的行为应当对服务的使用者来说透明。
某个大型解决方案中,某一组件充当SOA中的ESB,承担了服务定位的角色,派发往各个服务不同协议的请求,皆可以统一的协议收拢到该组件中,再由该组件负责以各种方式分发给不同的服务。
会话门面:Session Facade。目的有二:控制客户端对业务对象的访问;降低客户端和细粒度业务组件访问的网络负载。只暴露必要的、粗粒度的服务,并且可以对之在门面内部做好事务、安全、寻址和记录等等切面辅助工作。
多数情况下使用无状态的会话门面,对于客户端要求也较低,通常只需要单次调用就能完成功能;但也可能需要使用有状态的会话门面,通常比较复杂,需要涉及会话事务、会话资源的管理和释放。
和业务代表的关系:业务代表在客户端提供了对会话门面的抽象,把客户端的请求分别代理给专门提供特定服务的会话门面。
应用服务:集中、聚合特定功能,提供一个统一的服务层,其接口粒度比服务门面细。服务门面通常包括很少,甚至不包括业务逻辑,仅仅提供一个简单和粗粒度的接口。而一些相关的操作,之间具有内聚性,这就需要某个角色把它们聚合起来。
Facade成为粗粒度的门面的时候,内部就由多个细粒度的Service组成,这就是会话门面和应用服务之间的关系。举一个更具体的例子,一个短信息发送的会话门面,提供了消息发送的一系列功能,内部则包含了若干个应用服务:拼装消息报文、消息事务信息持久化、发送消息。合理地分割和规划应用服务是降低会话门面复杂度的有效途径。
文章系本人原创,转载请注明作者和出处
分享到:
相关推荐
关于J2EE设计模式的经典著作,由SUN资深工程师经验写就。
本书讲解使用J2EE核心技术实现企业应用过程中的模式、最佳实践、设计策略以及经过验证的解决方案,涵盖了JSP、servlet、EJB、JMS等技术,其中J2EE模式目录包括21个模式以及大量策略,帮助读者迅速熟练掌握J2EE技术...
虽然是英文版的,但是写的不错。推荐大家读一下。 如果无法打开,右键属性,选择解除锁定。
Core J2EE Patterns核心模式第二版源码,与书籍配套学习.
在研究多种J2EE Web框架和J2EE核心模式的基础上,提出了一种基于J2EE核心模式的组合Web框架--CWFBP(Composite Web Framework based on core J2EE Patterns)模型.框架采用分层体系架构,集成了开源的J2EE Web框架和持久...
本书讲解使用J2EE核心技术实现企业应用过程中的模式、最佳实践、设计策略以及经过验证的解决方案,涵盖了JSP、servlet、EJB、JMS等技术,其中J2EE模式目录包括21个模式以及大量策略,帮助读者迅速熟练掌握J2EE技术,...
核心的J2EE设计模式
Core J2EE Patterns
Core J2EE Patterns 2nd Editioin
source code for J2EE Core Patterns.
SUN - Core J2EE patterns
J2EE 核心设计模式。Interceptiong Filter、Service Locator 、BUsiness Delegate 等。
中文译名:J2EE设计模式 作者: (美)William Crawford & Jonathan Kaplan <br/>本书一边在持久化和消息通信等领域中描述一些新模式,一边向你说明如何在J2EE应用的上下文中实现许多模式。有助于考虑问题...
J2EE Architecture and Design Patterns J2EE Architecture and Design Patterns
J2EE_Design_Patterns.rar
J2EE_Patterns-J2EE设计模式-PPT(JDON)
J2EE Patterns.chm
我喜欢这本书,模式和反模式相互矛盾又统一