JDBC基础(一)
首先要检查一下,看是否正确安装了。这包括如下步骤:
- 在机器上安装Java和JDBC。
要安装Java平台和JDBC API,只要遵照说明下载最新版本的JDK。在下载JDK时也一起下载了JDBC。示范JDBC 1.0 API的示例代码是用JDK 1.1编写的,可在兼容JDK1.1(包括JDK 1.2)的任何版本的Java平台上运行。注意,示范JDBC 2.0 API的示例代码要求运行在JDK1.2上,在JDK1.1上是无法运行的。
可在以下网址找到最新版本的JDK(在本文编写时是JDK1.2):
- 在机器上安装驱动程序。
驱动程序应该包括了安装说明书。对于为特定DBMS编写的JDBC驱动程序,安装仅包括将驱动程序复制到您的机器上,不需要特别的配置。
JDBC-ODBC Bridge驱动程序不太容易安装。如果下载的是Solaris或Windows版本的JDK1.1,将自动获得JDBC-ODBC Bridge驱动程序,驱动程序本身不需要任何特殊的配置。但ODBC需要配置。如果您的机器上尚未安装ODBC,就需要访问ODBC驱动程序供应商,获取安装和配置的详细信息。
- 如果需要的话,安装DBMS。
如果尚未安装DBMS,需要按照供应商的安装说明进行安装。多数用户都会安装一个DBMS,并将使用一个已建立的数据库。
创建数据库
我们假定数据库COFFEEBREAK已经存在(创建数据库一点都不难,但需要特殊的权限,一般由数据库管理员来完成)。当您创建用作本教程例子的表时,它们存放在默认的数据库中。我们特意让表的数量和大小保持较小以便易于处理。
假定我们的示例数据库用于一家称为Coffee Break的小咖啡厅,那里的咖啡豆是以磅为单位销售,煮好的咖啡是以杯为单位销售的。为简化问题,也假定经营者只需要两个表,一个存放咖啡的类型,一个存放咖啡的供应商。
首先,我们向您展示如何用DBMS打开一个连接。由于JDBC所做的是将SQL代码发送到DBMS,所以接着我们会展示一些SQL代码。然后我们会向您展示,使用JDBC将SQL传递到DBMS并处理返回的结果是何等容易。
这些代码在大多数主流DBMS产品上测试过。但采用较老版本ODBC驱动程序及JDBC-ODBC Bridge时,可能会遇到一些兼容性问题。
建立数据库连接
首先要建立一个到想要使用的DBMS的连接。这包括两个步骤:(1) 加载驱动程序;(2) 创建连接。
加载驱动程序是一件非常简单的事情,只需要一行代码。例如,想要使用JDBC-ODBC Bridge,就可用下面代码加载它:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");驱动程序文档会给您需要使用的类名。例如,假设类名是jdbc.DriverXYZ,就可用如下代码行加载驱动程序:
Class.forName("jdbc.DriverXYZ");不需要创建驱动程序的实例,然后再用DriverManager注册它,因为调用Class.forName将会自动处理这些事情。如果要创建自己的实例,就会创建一个不必要的副本,但这并没有害处。
创建连接的第二步是使用合适的驱动程序连接到DBMS。如下代码行示范了一般的用法:
Connection con = DriverManager.getConnection(url, "myLogin", "myPassword");这一步也很简单,难的是该向url提供什么。如果使用JDBC-ODBC Bridge驱动程序,JDBC URL将以jdbc:odbc:开始。URL的其余部分一般是数据源名称或数据库系统。因此,假设您要用ODBC访问称为Fred的ODBC数据源,您的JDBC URL可能就是jdbc:odbc:Fred。在myLogin处,输入要登录到DBMS的用户名称;在myPassowrd处,输入DBMS的用户密码。假设使用登录名Fernanda、密码J8登录到DBMS,只要用如下两行代码即可建立连接:
String url = "jdbc:odbc:Fred";Connection con = DriverManager.getConnection(url, "Fernanda", "J8");如果使用第三方开发的JDBC驱动程序,文档会告诉您使用的子协议,也就是在JDBC URL中放在jdbc:之后的东西。例如,假设驱动程序开发人员将名称acme注册为子协议,JDBC URL的第一、二部分将会是jdbc:acme:。驱动程序文档也将给出JDBC URL其余部分的说明。JDBC URL最后一部分提供了标识数据源的信息。
如果加载的驱动程序之一识别了提供给方法DriverManger.getConnection的JDBC URL,那个驱动程序将建立到JDBC URL指定的DBMS的连接。顾名思义,DriverManager类在幕后处理建立连接的各种细节。除非您自己编写驱动程序,否则就不会用到接口Driver中的任何方法,您真正需要知道的唯一一个DriverManager方法是DriverManager.getConnection。
方法DriverManager.getConnection返回的连接是一个开放连接,可用于创建JDBC语句,将SQL语句传递给DBMS。在前面的例子中,con是一个开放连接,我们会在下面的例子中用到。
推荐文章 |
