<p>这个教程附带的示例代码创建了一个数据库,供一个名为The Coffee Break的小咖啡馆所有者使用,咖啡豆按磅销售,冲泡咖啡按杯销售。</p> <p>以下步骤配置了一个JDBC开发环境,您可以使用该环境编译和运行教程示例:</p> <ol> <li>在计算机上安装最新版本的Java SE SDK</li> <li>如果需要,安装您的数据库管理系统(DBMS)</li> <li>从您的数据库供应商那里安装JDBC驱动程序</li> <li>安装Apache Ant</li> <li>安装Apache Xalan</li> <li>下载示例代码</li> <li>修改文件</li> <li>修改教程属性文件</li> <li>编译和打包示例</li> <li>创建数据库、表和填充表</li> <li>运行示例</li> </ol> <p>在计算机上安装最新版本的Java SE SDK。</p> <p>确保Java SE SDK的完整目录路径下的目录在您的环境变量中,以便您可以从任何目录运行Java编译器和Java应用程序启动器。</p> <p>此教程已经针对以下DBMS进行了测试:</p> <ul> <li> <p>Java DB</p> <p><strong>注意</strong>:最近版本的JDK不再包含Java DB。Java DB是Apache Derby的重新品牌。如果您想使用Java DB,请从Apache DB项目下载最新版本。</p></li> <li> <p>MySQL</p></li> </ul> <p>请注意,如果您使用其他DBMS,可能需要修改教程示例的代码。</p> <p>如果您使用Java DB,则已经带有JDBC驱动程序。如果您使用MySQL,请安装最新版本的MySQL JDBC驱动程序Connector/J。</p> <p>联系您的数据库供应商以获取适用于您的DBMS的JDBC驱动程序。</p> <p>JDBC驱动程序有许多可能的实现。这些实现被归类如下:</p> <ul> <li> <p><strong>类型1</strong>:将JDBC API实现为与其他数据访问API(如ODBC)的映射。这种类型的驱动程序通常依赖于本地库,限制了它们的可移植性。JDBC-ODBC桥是类型1驱动程序的一个示例。</p> <p><strong>注意</strong>:JDBC-ODBC桥应被视为一个过渡性解决方案。Oracle不支持该桥。仅在您的数据库管理系统不提供仅限于Java的JDBC驱动程序时考虑使用。</p></li> <li> <p><strong>类型2</strong>:部分使用Java编程语言,部分使用本机代码编写的驱动程序。这些驱动程序使用特定于其连接的数据源的本机客户端库。同样,由于本机代码,它们的可移植性有限。Oracle的OCI(Oracle Call Interface)客户端驱动程序是类型2驱动程序的一个示例。</p></li> <li> <p><strong>类型3</strong>:使用纯Java客户端,并使用数据库无关协议与中间件服务器通信的驱动程序。然后,中间件服务器将客户端的请求传递给数据源。</p></li> <li> <p><strong>类型4</strong>:纯Java驱动程序,实现特定数据源的网络协议。客户端直接连接到数据源。</p></li> </ul> <p>检查您的数据库管理系统提供哪些驱动程序类型。Java DB提供两种类型4驱动程序,即嵌入式驱动程序和网络客户端驱动程序。MySQL Connector/J是一种类型4驱动程序。</p> <p>安装JDBC驱动程序通常包括将驱动程序复制到计算机上,然后将其位置添加到类路径中。此外,除了类型4驱动程序之外的许多JDBC驱动程序还要求您安装客户端API。通常不需要其他特殊配置。</p> <p>这些步骤使用Apache Ant,一个基于Java的工具,构建、编译和运行JDBC教程示例。请转到以下链接下载Apache Ant:</p> <p></p> <p>确保Apache Ant可执行文件在您的环境变量中,以便您可以从任何目录运行它。</p> <p>如果您的数据库管理系统是Java DB,则示例(在使用SQLXML对象中描述)需要Apache Xalan。该示例使用Apache Xalan-Java。请转到以下链接下载:</p> <p></p> <p>示例代码包括以下文件:</p> <ul> <li> <ul> <li></li> <li></li> <li></li> <li></li> </ul></li> <li> <ul> <li> <ul> <li></li> <li></li> <li></li> <li></li> </ul></li> <li> <ul> <li></li> <li></li> <li></li> <li></li> </ul></li> </ul></li> <li> <ul> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> </ul></li> <li> <ul> <li></li> </ul></li> <li> <ul> <li></li> <li></li> </ul></li> <li></li> </ul> <p>创建一个目录来存放所有示例文件。这些步骤将使用来引用此目录。将文件解压缩到。</p> <p>文件是Apache Ant用于编译和执行JDBC示例的构建文件。文件和包含Java DB和MySQL所需的额外的Apache Ant属性。文件和包含示例所需的属性。</p> <p>按照以下方式修改这些XML文件:</p> <p>在文件中,将属性修改为或,取决于您使用的DBMS。例如,如果您使用的是Java DB,则文件将包含以下内容:</p> <p>类似地,如果你使用的是MySQL,你的 文件应该包含以下内容:</p> <p>在 或 文件中(取决于你的DBMS),根据下表所述修改以下属性:</p> <div border="1" summary="特定于数据库管理系统的构建属性"> <tbody> <tr> <th id="h1">属性</th> <th id="h2">描述</th> </tr> <tr> <td headers="h1"></td> <td headers="h2">您的Java编译器的完整路径名,</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">您的Java运行时可执行文件的完整路径名,</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">属性文件的名称,可以是或</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">您的MySQL驱动程序的完整路径名。对于Connector/J,通常是。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">您的Java DB驱动程序的完整路径名。通常是。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">包含Apache Xalan的目录的完整路径名。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">JDBC教程使用的类路径。 <em>您不需要更改此值。</em></td> </tr> <tr> <td headers="h1"></td> <td headers="h2">文件的完整路径名。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">取决于您使用的是Java DB还是MySQL的值,可以是或。教程使用此值来构建连接到DBMS所需的URL,并标识特定于DBMS的代码和SQL语句。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">JDBC驱动程序的完全限定类名。对于Java DB,这是。对于MySQL,这是。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">托管DBMS的计算机的主机名。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">托管DBMS的计算机的端口号。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">教程创建和使用的数据库的名称。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">用于在创建新数据库时连接到您的DBMS的连接URL。 <em>您不需要更改此值。</em></td> </tr> <tr> <td headers="h1"></td> <td headers="h2">用于连接到您的DBMS的连接URL。 <em>您不需要更改此值。</em></td> </tr> <tr> <td headers="h1"></td> <td headers="h2">具有在DBMS中创建数据库权限的用户的名称。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">在中指定的用户的密码。</td> </tr> <tr> <td headers="h1"></td> <td headers="h2">用于分隔SQL语句的字符。 <em>不要更改此值。</em> 它应该是分号字符()。</td> </tr> </tbody> </div> <p>教程示例使用文件或文件(取决于您使用的DBMS)中的值来连接DBMS并初始化数据库和表,如下表所述:</p> <div border="1" summary="特定于DBMS的示例属性"> <tbody> <tr> <th id="h101">属性</th> <th id="h102">描述</th> </tr> <tr> <td headers="h101"></td> <td headers="h102">根据您使用的是Java DB还是MySQL,其值为或。教程使用此值构建连接到DBMS所需的URL,并标识DBMS特定的代码和SQL语句。</td> </tr> <tr> <td headers="h101"></td> <td headers="h102">包含本教程所有类文件的JAR文件的完整路径名。</td> </tr> <tr> <td headers="h101"></td> <td headers="h102">JDBC驱动程序的完全限定类名。对于Java DB,为。对于MySQL,为。</td> </tr> <tr> <td headers="h101"></td> <td headers="h102">教程创建和使用的数据库的名称。</td> </tr> <tr> <td headers="h101"></td> <td headers="h102">具有在DBMS中创建数据库访问权限的用户的名称。</td> </tr> <tr> <td headers="h101"></td> <td headers="h102">与指定的用户关联的密码。</td> </tr> <tr> <td headers="h101"></td> <td headers="h102">托管您的DBMS的计算机的主机名。</td> </tr> <tr> <td headers="h101"></td> <td headers="h102">托管您的DBMS的计算机的端口号。</td> </tr> </tbody> </div> <p><strong>注意</strong>:为了简化JDBC API的演示,JDBC教程示例代码不执行部署系统通常使用的密码管理技术。在生产环境中,您可以遵循Oracle数据库密码管理准则并禁用任何示例帐户。有关密码管理准则和其他安全建议,请参阅<em>Oracle Database Security Guide</em>中的应用程序设计中的密码安全一节。</p> <p>在命令提示符下,将当前目录更改为。从该目录运行以下命令来编译示例并将其打包到一个jar文件中:</p> <p>如果你使用的是MySQL,则运行以下命令创建一个数据库:</p> <p><strong>注意</strong>:在文件中不存在创建Java DB数据库的相应Ant目标。用于建立数据库连接的Java DB数据库URL中包含创建数据库的选项(如果数据库不存在)。有关更多信息,请参见。</p> <p>如果你使用的是Java DB或MySQL,则从同一目录运行以下命令来删除现有的示例数据库表、重新创建表并填充数据。对于Java DB,这个命令还会在数据库不存在时创建数据库:</p> <p><strong>注意</strong>:在运行示例中的Java类之前,应该每次都运行命令。这些示例中的许多示例都期望样本数据库表的内容具有特定数据。</p> <p>文件中的每个目标对应于JDBC示例中的一个Java类或SQL脚本。下表列出了文件中的目标、每个目标执行的类或脚本,以及每个目标所需的其他类或文件:</p> <div border="1" summary="build.xml targets"> <tbody> <tr> <th id="h201">Ant目标</th> <th id="h202">类或SQL脚本</th> <th id="h203">其他所需类或文件</th> </tr> <tr> <td headers="h201"></td> <td headers="h202">;查看文件以查看其他运行的SQL语句</td> <td headers="h203">无其他所需文件</td> </tr> <tr> <td headers="h201"></td> <td headers="h202">。</td> <td headers="h203">无其他所需文件</td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203">无其他所需类</td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203"></td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203"></td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203"></td> </tr> <tr> <td headers="h201"></td> <td headers="h202">,</td> <td headers="h203"></td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203"></td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203">,,</td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203"></td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203">,</td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203">,目录中的XML文件</td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203"></td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203">,,</td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203">,,</td> </tr> <tr> <td headers="h201"></td> <td headers="h202"></td> <td headers="h203">,</td> </tr> </tbody> </div> <p>例如,要运行类,请将当前目录更改为,然后从该目录中运行以下命令:</p>
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/16420.html