J2EE与IBM对象-关系数据库 - 编程入门网
J2EE与IBM对象-关系数据库时间:2011-04-13 IBM Jacques Roy简介 数据库的选型应该是会为您带来商业优势的战略性决策。一旦做出决策,您 就必须充分利用该数据库服务器来实现这一优势。本文简要地介绍了 Java™ 2 Enterprise Environment(J2EE)环境,并讨论了 J2EE 开发中使用的面向对象方法(分析 、设计、实现),以及一些与对象持久性相关的问题,因为对象持久性与对象-关系数据库管 理系统(ORDBMS)的使用相关联。 Web 体系结构背景 J2EE 包含几十个缩写词 ,每个均代表不同的概念。要理解这一复杂性,回顾一下 Web 体系结构的发展过程是十分有 用的,如图 1 所示。 图 1. Web 体系结构 图 1 中所展 示的体系结构代表了 1996 年的 Web 环境。那时,浏览器和 Web 服务器主要是由 Netscape 提供的,而 Netscape 的产品在当时较之以前的产品来说是一个重大的进步。 在图 1 的左侧,我们看到的是浏览器。它包含一些附加功能,以使用插件来提供像显示 .pdf 文件 这样的功能。它还增加了一些编程功能,以改善与用户的交互。其中包括一种能够添加到 HTML 语言中的脚本语言 JavaScript(独立于 Java 创建的),以及可包含在 HTML 页中进 行下载的 Java applet。 该浏览器使用超文本传输协议(HTTP)与 Web 服务器进行 通信。HTTP 的重要特点就是它建立在请求-响应模型的基础上。每个请求-响应都是相互独立 的。Web 服务器不会等待当前客户机的下一请求。因此,该协议是 无状态的(stateless) 。 万维网(WWW)是为了易于访问文档而创建的。因为每个请求都是单独完成的,所 以无需追踪复杂的交互。Web 服务器可以接收请求,并使用所提供的信息在由 Web 服务器控 制的目录结构中检索所请求的文档。 在发展初期,Web 服务器的定义中添加了一个称作公共网关接口(Common Gateway Interface,CGI)的接口。这是一种按照所定义的协议来调用以指定格式接收信息的程序, 使用该程序来实现请求,并将之返回给 Web 服务器的简单方式。该方式还有能力调用一个可 以生成更多动态内容的程序。因为这是对于浏览器请求的扩展,所以 CGI 程序是暂时性的: 通过请求创建,一旦返回结果就终止。 CGI 协议也有其局限性,并用于实现访问关系数据库的应用程序。这意味着每当向驻留在 关系数据库中的信息发出请求时,都必须打开数据库连接,插入、更新和检索数据,以及关 闭连接。在大多数情况下,多数时间都消耗在数据库的连接上。 人们想出了两个办法来解决该问题: 让 CGI 程序与永久性程序进行对话。 以及通过包含 API 来扩展 Web 服务器的功能。 第一个办法是让 CGI 程序与永久性程序进行对话,这个方法可以有许多变种。CGI 程序 可以启动一个要基于某个 ID 来进行访问的应用程序,而这个 ID 是我们在响应中返回的( 如图 1 中的 app-srv 所示)。如果此 ID 在某个间隔内还没有被重新使用,程序将终止。 另一种方式是让一个永久性程序来处理所有客户机向该应用程序发送的请求。该场景极可能 需要一个多线程程序,用于验证客户机的有效性,以及向每个新的客户机分配 ID。然后,它 必须记录每个客户机 ID 的超时时间。 第二个办法是通过包含 API 来扩展 Web 服务器的功能,即利用 Web 服务器 API(图 1 中的 NSAPI)来编写应用程序,并将之驻留在 Web 服务器上。通过该方法,Web 服务器可以 保持数据库连接,以及包含应用程序特定的处理信息。这种方法也需要记录用户和连接超时 。 J2EE与IBM对象-关系数据库(2)时间:2011-04-13 IBM Jacques Roy进入应用程序服务器 将各种 Web 应用程序的实现方式合并成为一个更完整的架构是有道理的。那时,Java 倡 导的“一次编写,到处运行”的概念已经十分流行。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |