- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Web 应用中三层结构编程模式的两种实现方法
梁邦勇 徐剑军 王克宏
清华大学计算机系知识工程组
摘要:随着 Browser/Server 编程模式的优势越来越明显,基于 web 的三层应用程序的开发越来越成为业界
探讨的话题。本文在现有的技术下,提出了两种三层结构的编程模式的解决方法,其中一种是基于 J2EE 平
台的 EJB 的,一种是基于设计模式和 JSP/Servlet 的。
关键字:J2EE, EJB, JSP, JavaBean, Web 应用
1.背景介绍
Web 应用中最初只是一些静态网页和简单的 CGI 程序,这显然是不够的,所以 We 服
务器端的脚本语言一直发展迅速,比如 php ,perl 等,而现在的 web 应用已经可以替代很多
桌面应用,比如说可以取代传统的 MIS (Management Information System )。显然在这种传统
的应用当中包含着一些比较复杂的工作流和数据管理的功能,而以前的 web 技术更多的着
眼于静态页面和一些简单的交互下的 CGI 程序。
为了适应 web 技术的发展,web 应用中的三层结构应允而生,支持三层结构的平台主
要有微软的 ASP+COM+和 SUN 的J2EE (Java 2 Enterprise Edition )其中J2EE 的支持比较灵
活,可以利用 EJB (Enterprise JavaBeans ),也可以利用J2EE 的JSP +JavaBean 来通过自己
的设计模式来实现,本文将对这两种实现三层结构的方法进行介绍,并且对 JSP+JavaBean
实现三层结构的方法进行详细分析。
三层结构的 Web 应用如图 1:
图 1.三层结构的 web 应用程序
三层结构由客户端,服务器端和数据服务器构成,这就把软件工程上所说的
M-V-C(Model-Control-View)给分散到不同的机器上去了。在这种结构中 Client 端只有浏览功
能,也就是 view ,浏览器就是客户端的界面,这相比 Client/Server 结构有很多优点,
Client/Server 结构也就是常说的“胖客户端”,Client/Server 结构已经应用多年,相关的技术
已经十分成熟,所以缺点也暴露得很明显。首先,Client/Server 模式把很多逻辑放到客户端
去处理,也就是说如果某个应用逻辑改动了,那么所有的应用客户端都得改动,而且因为客
户端一般都是普通的 PC ,计算能力有限,所以在客户端进行应用逻辑的计算不是一个好办
185
法;其次,客户端软件在运行之前需要安装和配置,如果某一台安装这个客户端的机器遇到
了不可修复的错误,那么客户端必须重新在其他机器上安装才能再次运行。而在三层结构的
应用中,这些问题都不存在,因为三层结构中的 View 是浏览器,浏览器端没有应用逻辑的
代码,也没有安装的要求,在任何一台机器上都能连接服务器。所以三层结构在软件工程上
是先进的,当然,传统的 Client/Server 也有优势,比如在安全性方面基于 HTTP 协议的三层
结构不如 Client/Server 结构,在网络速度比较慢的时候 Client/Server 的反应速度也比三层结
构要快。
因为这些优点,所以在构建Web 应用时三层结构比较有优势,SUN 的J2EE 是一个很
好的平台,前面已经说过我们可以利用 J2EE 构建两种类型的三层结构 Web 应用。
2.第一种方法:利用EJB 实现
利用 J2EE 平台提供的 EJB 实现 Web 应用的三层结构。J2EE 平台提供了很多服务可
以让EJB 在其中运行。EJB 是 J2EE 的核心,J2EE 是提供了 EJB 可以运行的容器,EJB 在
容器中运行,完成应用程序所要求的数据存储和业务逻辑的需求。EJB,EJB 的容器和J2EE
的关系可以大致用图2 表示:
图2.EJB ,EJB 容器和 J2EE 的关系
EJB 分为两种,一种是 Entity Bean ,一种是 Session Bean。Entity Bean 是代表数据的,
一个 Entity Bean 可以代表数据库里的一个表,如图 3 所示:
文档评论(0)