📄 jdbc-spec.frame4.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=gb2312">
<title></title>
</head>
<body bgcolor="#ffffff">
<table width="600">
<tr>
<td><font size="-1"><a href="jdbc-spec.frame.html">目录</a> | <a
href="jdbc-spec.frame3.html">上一页</a> | <a href="jdbc-spec.frame5.html">下一页</a>
</font></td>
<td align="right"><i>JDBC<sup><font size="-2">TM</font></sup> 指南:入门</i></td>
</tr>
</table>
<hr>
<p><br>
<a name="15649"></a> </p>
<h2>4 所用的方案</h2>
<p>在浏览 JDBC API
细节之前,最好先了解常用的方案。以下两个常见方案必须根据各自的用途区别对待:<em>
applet </em>和<em>应用程序</em>。 </p>
<p><a name="15654"></a> </p>
<h3>4.1 applet </h3>
<p>到目前为止,Java 最引人注意的用途是实现<em> applet</em>。它们可以作为
Web 文档的一部分从网上下载,其中包括数据库访问 applet(它们可利用
JDBC 访问数据库)。<br>
<br>
<img src="jdbc-spec.frame.anc6.gif" width="465" height="96"><br>
</p>
<p><a name="15823"></a>例如,用户可以下载 Java applet,用于显示股票证券的历史价格图。该
applet 可以通过访问Internet上的关系数据库来获得股票历史价格。 </p>
<p>applet
最常见的用途是跨越不受信任的边界。例如,可以在Internet上从另一家公司获取
applet。因此,可以将该方案称为“Internet”方案。但是,applet
也可在本地网络下载,而其中的客户机安全性仍是一个问题。 </p>
<p>典型的 applet 与传统数据库应用程序有很多不同之处,如:
<ul>
<p><a name="15867"></a></p>
<li>不受信任的 applet 被允许执行的操作受到严格限制。特别地,这些
applet 不能访问任何本地文件,也不能打开到任意主机的网络连接。<br>
<br>
<a name="15895"></a> </li>
<li>在识别和连接到数据库等方面,Internet上的 applet
会遇到新的问题。<a href="#16038"><sup>1</sup></a> <br>
<br>
<a name="15929"></a> </li>
<li>当数据库不完整时,世界各地对数据库连接实现的性能考虑会有所不同。Internet上数据库
applet
的网络响应时间将与本地网络上数据库应用程序的的网络响应时间有很大的差别。</li>
</ul>
<p><a name="15665"></a></p>
<h3>4.2 应用程序</h3>
<p>Java
也可用于构建常规的应用程序。这些应用程序的运行方式类似于客户机上收缩打包或自定义的应用程序。我们相信,随着更好的
Java 工具的出现,随着人们对高效编程的认识及对 Java
在应用程序开发方面其它优势的深入了解,Java
将得到日益广泛的应用。那时,Java
代码将受到信任,同时也被允许读取和写入文件、打开网络连接等,就象其它任何应用程序代码一样。<br>
<br>
<img src="jdbc-spec.frame.anc7.gif" width="574" height="128"><br>
</p>
<p><a name="15666"></a>或许,这些 Java
应用程序将在公司内或“Intranet”上得到最广泛的应用,因此不妨将其称之为“Intranet”方案。例如,公司可能通过使用
GUI 构建工具(生成基于公司数据机制的表单的 Java 代码),用 Java
实现其全部应用程序。这些应用程序将在局域网或广域网上访问公司的数据库服务器。然而,Java
应用程序也可通过Internet访问数据库。 </p>
<p><a name="15906"></a>Java 应用程序和“Intranet”条件与 applet
的有诸多不同。例如,最常见的数据库标识方式是让用户或应用程序指定数据库名(例如,“Customers”或“Personnel”)。用户希望系统能定位计算机、DBMS、JDBC
驱动程序和数据库。 </p>
<p><a name="15778"></a> </p>
<h3>4.3 其它方案</h3>
<p>还有一些其它的特殊条件也需要加以考虑:
<ul>
<p><a name="15854"></a></p>
<li><em>可信任的 applet </em>可使 Java
虚拟机认可其可靠性,这是因为它们已用特殊密钥加密过,或是用户已决定相信来自于特殊源的
applet。出于安全的考虑,可以用与处理应用程序相同的方式来处理这些
applet。但在某些方面(例如,定位Internet上的数据库),applet
的功能特征将表现得更为明显。<br>
<br>
<a name="15864"></a> </li>
<li>与从 Java GUI 到 DBMS 服务器的直接客户机/服务器访问相反,可对数据库使用<em>三层访问</em>。这种情况中,Java
应用程序将调用网上服务的“中间层”,它用来对数据库进行访问。可通过
RPC(远程过程调用)或 ORB(对象请求代理)来实现调用过程。两种情况下,最好用对象范例来定义中间层,例如带有诸如客户发票、地址改变和其它事务的“客户对象”。<br>
<br>
</li>
</ul>
<p><a name="15981"></a></p>
<p>我们相信三层访问以后会更为普遍,因为对 MIS
主管而言,它在公司数据上显式定义合法操作,而不是允许对 DBMS
服务器进行直接的无限制更新。同样,很多情况下三层体系结构也可改善性能。
</p>
<p><a name="11292"></a> <br>
<br>
<img src="jdbc-spec.frame.anc4.gif" width="502" height="203"><br>
</p>
<p><a name="16000"></a>目前,C 或 C++
语言中一般实现了中间层。随着编译器(编译器将 Java
字节代码转换成高效的机器指定代码)优化操作的引入,在 Java
中也可实现中间层;因为 Java
有许多颇有价值的特性(强大、安全、多线程)。JDBC
对中间层比较有用。 </p>
<p><a name="15776"></a> </p>
<p><br>
</p>
<hr>
<font size="-1"><a href="jdbc-spec.frame.html">
<p>目录</a> | <a href="jdbc-spec.frame3.html">上一页</a> | <a
href="jdbc-spec.frame5.html">下一页</a> </font></p>
<hr>
<sup>
<p>1</sup><a name="16038"></a> 例如,您不能象在 ODBC 中那样依靠 .INI
文件中的数据库位置或驱动程序,也不能依靠客户机上的本地注册服务程序。
</p>
<address>
<a href="mailto:jdbc@wombat.eng.sun.com">jdbc@wombat.eng.sun.com</a> 或 <a
href="mailto:jdbc-odbc@wombat.eng.sun.com">jdbc-odbc@wombat.eng.sun.com</a>
</address>
<a href="../../../relnotes/SMICopyright.html"><font size="-1"><i>
<p>版权所有 © 1996, 1997 Sun Microsystems, Inc. 保留所有权利。</i></font> </a><!-- HTML generated by Suzette Pelouch on April 10, 1998 -->
</p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -