没有合适的资源?快使用搜索试试~ 我知道了~
首页多层J2EE系统的架构与模式设计
J2EE提供了一套完整的基于标准化模块的服务组件,它能自动的处理大多数应用程序的细节,而不需要复杂的编程,因此简化了复杂的企业级应用程序的开发。本文首先考察企业级应用的一般概念和需求,然后简要阐述面向对象程序设计的基本原则,并结合软件工程的思想来讨论多层的J2EE应用架构,分析它们满足企业级应用的方式,,再通过讲述常用的几种Java设计模式和Java反射技术来说明如何实现这些应用架构。
资源详情
资源评论
资源推荐
多层 J2EE 系统的架构与模式设计
摘要……………………………………………………………………
文献综述………………………………………………………………
第一章前言……………………………………………………………
第二章 的基本原则及发展方向
第一节软件的可维护性与可复用性…………………………
第二节六条 设计原则……………………………………
第三节 的兴起……………………………………………
第三章 系统的架构设计
第一节 中常用的概念……………………………………
第二节 架构………………………………………………
第三节分布式架构……………………………………………
第四章数据持久层的设计
第一节业务对象的持久化……………………………………
第二节数据访问对象设计模式………………………………
第三节 框架的原理和重要性……………………………
第四节数据持久层……………………………………………
第五节数据库连接池、缓存及系统性能的提升……………
第六节 反射技术VV………………………………………
第五章 架构中各层的数据表示方法
第一节 三层体系结构中的数据表示要求………………
第二节 系统中各层数据表示的设计VV…………………
第六章设计模式的概念与几种常用的 设计模式
第一节设计模式的概念………………………………………
第二节工厂创建模式与单例模式……………………………
第三节使用工厂模式实现
总结……………………………………………………………………
结束语…………………………………………………………………
【摘要】VV 提供了一套完整的基于标准化模块的服务组件,它能自动的处理大多数应
用程序的细节,而不需要复杂的编程,因此简化了复杂的企业级应用程序的开发。本文首
先考察企业级应用的一般概念和需求,然后简要阐述面向对象程序设计的基本原则,并结
合软件工程的思想来讨论多层的 应用架构,分析它们满足企业级应用的方式,再通过
讲述常用的几种 设计模式和 反射技术来说明如何实现这些应用架构。
【关键词】模型视图控制,对象关系映射,业务对象,面向方面编程,数据访问对象,
设计模式
!"#"$%&''()*+ ,-*./,0,
【 1*+2+* 】 *. 3&.4* ,+3.* 33&.2'",* 1) 1*.,/ + ", *+,--.5-
"-%&2" 3",,+*1) 3".-.,/2" 3&+*+"$*.2* +"+"*2" 3",,+*,-1)
,-&.,/ ,)-+.&*"$33&.2'",1."%+" '2&&) , !.+"%+2" 3&63"/ .,/7
.*33.!*+/,&2",23+,-+8%. ,+"$,+3.*33&.2'",&1"+*
+/,&3.,2.3&"$"192+".,+-3"/ .,/1.:)7;2" 1.,+.-"$("<!
,/.,.,/+"-.*2%**+$ !"#"$ %&'',- ,!.&,&)5"!+)2,
*'*$)+- ,-"$,+3.*33&.2'",*7+&*++.*33*"!*"!+". 3& ,++"*
$ !"#*"$ %&'' 1).,+"-%2.,/*" #.,-* "$-*./,30,,- +
:2'",+2,"&"/)7
【#)!"-*】,,=,,,*./,30,7
【文献综述】
计算机软件是人类心灵和智慧在虚拟空间中的投射。软件的性能是人类能力的扩展,
它的活动就是人类心智活动的反映。软件直接表达出设计者对目标的理解,对用户的期待
以及对自己的定位。人们在自己的环境中不断发现问题和寻找问题的解决方案的时候,发
现有一些问题及其解决方案不断变换面孔重复出现,但在这些不同的面孔后面有着共同的
本质,这些共同的本质就是模式。著名建筑工程学家 .*+"3&6,- 所著《建筑的永
恒之道》>. &**;)"$=%.&-.,/?和他发展出来的模式理论涵盖科学,心理,艺术和
哲学,不仅适用于建筑工程学,而且适用于软件工程学以及任何其他的工程学。
今天的企业软件可以由多个不同的部分组成,但企业已经认识到,只要符合企业利益,
很有必要将各个分散的系统进行良好的集成,以尽可能相互支持,总的来说企业希望对集
成后的企业级软件的具体应用如下:
、通过集成企业的客户支持和本身的产品知识,企业可以利用 ;= 为它的客户提供
更新更好的服务。
、将企业售货机联网,企业可以获得更多的在线客户。
、将销售管理系统和存货系统相链接,企业可以设计特定的低成本的 ;1 销售渠道,
这样可以进入未曾涉足的市场领域。
、如果给企业员工所使用的服务提供一个前端,例如内部办公用品订货系统,将它与
会计系统连接在一起,企业就可以降低总体开支并提高员工的工作效率。
、在线使用企业 @ 系统,可以让员工根据他们自己的健康状况进行更多的选择,这
样可以降低企业整体的管理费用。
、使企业的人力资源密集型操作自动化,并使它可用于任何时间任何地点,在降低整
体运营费用的同时,企业还可以给它的客户提供更好的服务。
按企业对企业级软件的要求,一个企业级应用系统>?肯定会是一个服务于商业目的,
处理企业业务信息,数据的软件系统,因此大概可以总结出以下五方面的特征A有复杂的业
务逻辑,有大量持久化数据,与多种外部系统相关联有较高的性能要求,在运行时需要随
时监控,管理,应该能够实时记录,观察系统运行情况。修改系统配置。
以前的企业应用,集中式的单层>*.,/&'?应用程序占有主导地位。在软件中,层是一个
抽象概念,它的主要目的是通过将软件分解成独立的逻辑层,帮助我们理解与特定应用程
序相关联的体系结构。从应用程序的角度看,单层应用程序的最大问题在于,它将表示,
业务逻辑和数据都混合在一起。客户机服务器方法通过将表示和一些业务逻辑分别移至单
独的层中,缓解了上述主要问题的影响,不过从应用程序的角度来看,业务逻辑和表示依
然很混乱。B 层>,'?方法可以取得更好的整体平衡,它将表示逻辑与业务逻辑从底层数
据中分离开来,以满足特定的需求。单单采用面向对象开发技术后只可以实现部分代码重
用,原因之一是对象都细粒度化,正是因为细粒度对象间更紧密的耦合状态,从而便利大
范围的重用变得很困难。分层化的组件设计就是为了解决这个问题。与对象不同,软件组
件是在更高的抽象级中设计的,可以提供一个完整的功能或服务。组件间的耦合更为松散
利用组件的接口,可以将组件迅速组合在一起以构建更大的企业级应用程序。
近年来,人 们 已 开发出了各种 不 同的 帮助理解的组件 模 型,例如, .2"*"< 的
2'C ,后来 的 编程接 口 , 和现在 兴 起 的 7,+ ;"# , (DB.2"*)*+ * 的
33&+ 和 =,*,,+3.*=,*>=?其中 = 是 的一部分。
(%,.2"*)*+ * 把 平 台 组 织 成 三 个 特 定 的 , 引 人 瞩 目 的 版 本 : 微 型 版
(),标准版( ()和企业版()。在这些产品中, 与开发企业级
应用联系最紧密。 为开发复杂的,分布式企业级 应用定义了一套体系结构。
最初是由 (%,.2"*)*+ * 在 年中期发布的,其正式发布则在 年后期。
仍然较新,其依次发布的版本间仍然存在着重大的改变,特别是在 = 方面。该平台
是建立在 E一次编写,随意运行”的理念上的,它通过一组技术和一套 F 实现。
B 层体系结构的概念已经出现一段较长的时间了,并已成功地应用于构建企业级应用
程序。(%, 在 中采用 , 层开发模型,并引入特定功能,允许更容易地开发服务器端可
伸缩的、基于 ;1 的企业级应用程序,从而在这个领域提供了 自身所缺少的关键成分。
为什么要使用 呢?它不是太新并且功能未经证实,它能提供什么?难道只是一种
一时的技术狂热吗?在 出现之前,=F 早已建立好了,可选用的轻量级的,可维
护的 *&+ 技术也已出现。除了这些, 还提供了一些有前景的优点,它让开发人员关
注开发业务逻辑,不用预先详细了解执行环境而把精力放到实现系统上,以及创建在硬件
平台和操作系统(()间更容易衔接的系统。企业级软件开发是一项复杂的任务,需要具
备许多不同领域的广泛知识。例如,一项典型的企业级应用程序开发工作可能要求你熟悉
进程间的通信问题、安全问题、数据库特定访问查询等。
企业级开发平台鼓励在系统开发、部署和执行之间作一个清晰的划分。此开发人
员可以将部署细节留给部署人员处理,如实际的数据库名称和存放位置、主机持有配置属
性等。 让系统可通过 和 而不是底层系统 F 被访问,从而支持硬件和 ( 无
关性。由于这种原因,遵循 体系结构技术规范的企业级系统可以非常容易地在硬件系
统和不同的 ( 之间衔接。
在企业级开发领域,虽然面对 .2"*"<7,+ 强大的挑战,但是 由于上述优点,并
且相对说来比较成熟,已经占据了企业级开发的大部分市场,并随着技术的进步、新的
版本的发布、开源社区庞大自由开发者的支持,将会使企业级开发变得更高效,更快
速,更高质量,更易于维护。
第一章前言
核心技术有十三种,它们和 F 覆盖了企业级 开发的广泛领域。在企业
级 开发工作中要用到的 的方方面面知识是不太可能的。比较常用的有容器 ,
*&+(= 等。容器是一种运行在服务器上的软件实体,用于管理特定类型的组件。它
为开发 组件提供了执行环境。通过这些容器, 体系结构就能在开发和部署间提供
无关性,并在不同类型的中间层服务器间提供可移植性。*&+ 是一些可生成动态内容的
;1 组件。它们是当今在 !!! 上看到的最常用的 组件之一。它们提供了一种有效的
机制,用于基于服务器的业务逻辑和基于 ;1 的客户端之间的交互,还可为通用的 GF 脚
本方法提供一种轻型且更易于管理的替代方法。( 是另一种类型的 ;1 组件,它是
从 *&+ 技术发展而来的。事实上,一部分 ( 编译进 *&+ 并在 *&+ 容器中执行。=
技术规范是 平台的最核心的部分。它为构建可伸缩、分布式、基于服务器的企业级
应用组件提供了一种综合性的组件模型。文章将结合这几种主要的组件技术来讲述构
建 系统的一般过程。
第二章 的基本原则及发展方向
第一节 软件的可维护性与可复用性
通常认为,一个易于维护的系统,就是复用率较高的系统;而一个复用较好的系统,
就是一个易于维护的系统。也就是说一个系统的设计目标应该具有如下性质:可扩展性,
灵活性,可插入性。
常听人说一个项目开发结束只完了这个项目的三分之一,可见系统的可维护的重要性。
导致一个系统可维护性降低主要有四个原因:过于僵硬,过于脆弱,复用率低,黏度过高
通过良好的软件复用,可以提高软件的生产效率,控制生产成本,并能提高软件的质量,
改善系统的可维护性,提高系统的灵活性和可插入性。
在面向对象的设计里,可维护性复用是以设计原则和设计模式为基础的,下一节介绍面向
对象设计的基本原则。
第二节六条 设计原则
设计原则是提高软件系统的可维护性和可复用性的指导性原则, 是一门纯面
向对象的设计语言,因此我们在使用 开发 系统时必须遵守 设计的基本原则。
这些设计原则首先都是复用的原则,遵循这些设计原则可以有效地提高系统的复用性,
同时提高系统的可维护性:
开闭原则A一个软件实体应当对扩展开放,对修改关闭
H(>里氏代换原则?A它是继承复用的基石
F>依赖倒转原则?A要依赖于抽象,不要依赖于具体
F(>接口隔离原则?A一个类对另一个类的依赖性应当是建立在最小接口上
>合成I聚合复用原则?A要尽量使用合成I聚合,尽量不要使用继承
H>迪米特法则?A一个对象应该对其他对象有尽可能少的了解
通过扩展已有的软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的
软件系统有一定的适应性和灵活性。而已有的软件模块,特别是最重要的抽象层模块不能
再修改,这就使变化莫测中的软件系统有一定的稳定性和延续性。具有这些优点的软件系
统是一个在高层次上实现了复用的系统,也是一个易于维护的系统。里氏代换要求凡是基
类型使用的地方,子类型一定适用,因此子类必须具备基类型的全部接口。
传统的过程性系统的设计办法倾向于使高层次的模块依赖于低层次的模块J抽象层次依
赖于具体层次。抽象层次包含的是应用系统的商务逻辑和宏观的,对整个系统来说是重要
的战略性决定,是必然性的体现J而具体层次则含有一些次要的与实现有关的算法和逻辑,
以及战术性的决定,带有相当大的偶然性选择。具体层次的代码是会经常有变动的,不能
避免出现错误。抽象层次依赖于具体层次,使许多具体层次的细节的算法变化立即影响到
抽象层次的宏观商务逻辑,导致微观决定宏观,战术决定战略,偶然决定必然。从哲学意
义上面讲这是很荒唐的事情,倒转原则就是要把这个错误的依赖关系倒转过来。
剩余19页未读,继续阅读
synthesis
- 粉丝: 1
- 资源: 68
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 数据结构1800题含完整答案详解.doc
- 医疗企业薪酬系统设计与管理方案.pptx
- 界面与表面技术界面理论与表面技术要点PPT学习教案.pptx
- Java集合排序及java集合类详解(Collection、List、Map、Set)讲解.pdf
- 网页浏览器的开发 (2).pdf
- 路由器原理与设计讲稿6-交换网络.pptx
- 火电厂锅炉过热汽温控制系统设计.doc
- 企业识别CIS系统手册[收集].pdf
- 物业管理基础知识.pptx
- 第4章财务预测.pptx
- 《集成电路工艺设计及器件特性分析》——实验教学计算机仿真系.pptx
- 局域网内共享文件提示没有访问权限的问题借鉴.pdf
- 第5章网络营销策略.pptx
- 固井质量测井原理PPT教案.pptx
- 毕业实习总结6篇.doc
- UGNX建模基础篇草图模块PPT学习教案.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0