业务对象:利用对象模型把业务数据和业务逻辑分离开来。业务对象在最前端(客户端)和最后端(数据资源)都会进行业务数据形式的转化。业务对象的实现通常有两种方式:POJO + JDO 或者 Entity Bean + BMP/CMP。业务对象包含业务逻辑和业务状态。
J2EE系统中面向过程向面向对象转变有时甚至仅仅区别于最初的一念之差。没有什么是绝对的事情,如果业务非常简单,客户端通过浅浅的显示层,直接访问持久层、甚至数据资源存储中业务数据,整个过程中,其结构都是依据客户端所需数据的获取过程来完成的,是典型的面向过程的实现方式,没有什么不合理;但一旦情况复杂了,你也许希望在系统中设定一些核心的业务模型,让它们来驱动整个服务的提供和流程的运转,而不再是客户端无任何包装的需求,这时候兴许就变成了模型驱动下的面向对象行为。
复合实体:Composite Entity。结合本地entity bean和POJO,实现业务对象持久化。复合实体能够把一组相互关联的业务对象聚合为粗粒度的entity bean实现。业务对象被实现为父对象和从属对象,从属对象紧耦合与父对象,且无法独立存在或独立被访问、识别和管理。无论使用远程对象还是本地对象实现复合实体,都不应该直接把entity bean暴露给客户端,而应当封装在门面里面。
实际我们的项目中,给内容超市部分,封装了核心的API,而API的调用传值,都是通过复合实体——各种Event完成的。这是一个很好的例子,就算日后将API扩展成可远程调用的方法,性质并未改变。
脏数据标示器策略:对复合实体持久化的时候,如果能判断哪些从属对象是脏的,就可以提高持久化性能。
传输策略可以考虑单次传输整个复合实体,减少网络交互;可以结合脏数据标示器,只传输变化的部分;可以结合懒加载策略,只传输需要的部分。
传输对象:Transfer Object。跨层次传输多种数据元素。有一种简化远程对象和远程接口的方法是,把众多get/set方法合并成粗粒度的getDate和setData方法。我们通常希望传输对象是简单和可控的,因此粒度不应过细,细节应尽量屏蔽,对于接口的定义,应该尽少约束。
日后我们系统的API扩展必然面临着复合实体传输的情境,API的远程调用已渐渐变得广泛,比如JavaEye支持API调用,使用JSON作为数据形式;我们常用的Blog客户端也是遵从的简约的API规范开发的。
传输对象组装器:Transfer Object Assembler。复合传输对象的形式构建应用模型。从各种不同的业务组件和业务服务中聚合多个传输对象,并且最后把复合对象返回给客户端。最大的好处:减少了客户端和应用模型之间的耦合。对于不同的传输形式,就并不需要应用模型做任何的改变,搭配不同的传输对象组装器和传输策略即可。
系统的页面集成中涉及到的会话信息的传递,提供了几种策略,就涉及到SpringHTTPInvoker传输、OSCache传输、本地传输和void传输等相应的对象组装器。
值列表处理器:Value List Handler。执行查询、缓存结果,并让客户端遍历、选择查询结果。基本上相当于封装了一个游标,共客户端遍历操作,但是如果这个游标是远程的,注意可能造成巨大的性能消耗。
我们的系统中设计了一个类:PaginationSupport,用于分页,其角色便类似于值列表处理器。需要查询哪一块区域的数据集合,就传递相应的游标指令。
文章系本人原创,转载请注明作者和出处
分享到:
相关推荐
《J2EE核心模式(Core J2EE Patterns)》是一本深度探讨J2EE平台设计模式的权威著作,由SUN公司的资深工程师倾力撰写。这本书是Java企业级开发者的必备参考书籍,它揭示了在复杂的企业级应用开发中,如何有效地利用...
本书讲解使用J2EE核心技术实现企业应用过程中的模式、最佳实践、设计策略以及经过验证的解决方案,涵盖了JSP、servlet、EJB、JMS等技术,其中J2EE模式目录包括21个模式以及大量策略,帮助读者迅速熟练掌握J2EE技术...
《J2EE Core Design Patterns》是一本专注于Java企业级应用开发中的核心设计模式的重要书籍。设计模式是软件工程中经过实践验证的、解决特定问题的模板,尤其在复杂如J2EE(Java 2 Platform, Enterprise Edition)...
### J2EE核心模式——最佳实践与设计策略 #### 一、引言 《J2EE核心模式:最佳实践与设计策略》是一本由Deepak Alur、John Crupi和Dan Malks编写的权威指南,它深入探讨了Java 2 Enterprise Edition(J2EE)平台下...
《Core J2EE Patterns》是Java企业级应用开发的经典之作,它详细介绍了在J2EE平台上构建可扩展、高效、可维护的系统所使用的最佳实践和设计模式。这本书的第二版源码对于深入理解J2EE开发中的核心概念和技术具有极高...
在研究多种J2EE Web框架和J2EE核心模式的基础上,提出了一种基于J2EE核心模式的组合Web框架--CWFBP(Composite Web Framework based on core J2EE Patterns)模型.框架采用分层体系架构,集成了开源的J2EE Web框架和持久...
《核心的J2EE设计模式》是一本专为Java企业级开发者编写的经典著作,它深入探讨了在J2EE平台上构建可扩展、高效且可维护的系统所使用的最佳实践和设计模式。这本书的第二版进一步更新了内容,以适应不断演进的Java...
Core J2EE Patterns
二、J2EE核心模式 1. **单例模式**:在J2EE环境中,单例模式常用于创建全局唯一的服务器端组件,例如应用配置对象或事务管理器。 2. **工厂模式**:用于动态地创建对象,特别是在需要依赖注入或需要隔离具体实现时...
《J2EE核心模式》源代码解析 J2EE(Java 2 Platform, Enterprise Edition)是Java平台上用于构建企业级应用程序的框架。它提供了一组服务、APIs和协议,以支持开发分布式、多层的企业应用。《J2EE Core Patterns》...
通过学习和应用这些J2EE核心模式,开发者能够更高效地构建可扩展、可维护的企业级应用。例如,EJB.Design.Patterns.Chinese.eBook-YSSY这个文件很可能是这本书的中文电子版,里面详细解释了上述各种模式的实现细节和...
《SUN - Core J2EE patterns》不仅是一本关于J2EE模式的指南,更是一本实用的开发手册,它涵盖了从理论到实践的全过程,对任何希望深入了解J2EE架构并掌握其核心模式的开发者来说,都是一本不可或缺的参考书籍。...
通过学习《Core J2EE Patterns》第二版,开发者可以掌握J2EE开发的核心概念和技术,提升在大型企业级项目中的设计和实现能力。这本书对于想要深入了解J2EE平台和构建高质量企业应用的开发者来说,是一本不可多得的...
标题《Core J2EE Patterns Best Practices And Design Strategies》和描述部分介绍了软件设计模式的重要性,将设计模式比喻为一个组织的“部落记忆”的有形体现。设计模式是解决常见问题的通用解决方案,它源自之前...
本书《J2EE Design Patterns Applied》旨在为读者提供一套全面的指南,通过实际案例深入探讨如何在J2EE环境中应用各种设计模式来解决常见问题。对于那些熟悉J2EE组件如Servlets、JSP页面和EJBs开发与部署的开发者来...
中文译名:J2EE设计模式 作者: (美)William Crawford & Jonathan Kaplan <br/>本书一边在持久化和消息通信等领域中描述一些新模式,一边向你说明如何在J2EE应用的上下文中实现许多模式。有助于考虑问题...
### Core J2EE Patterns:拦截过滤器模式 (Intercepting Filter) #### 背景与情境 在J2EE环境中,请求处理机制需要处理多种类型的客户端请求,这些请求可能涉及不同的处理逻辑。例如,某些请求可能直接转发到相应...