首先要建立一个到想要使用的DBMS的连接。这包括两个步骤:(1) 加载驱动程序;(2) 创建连接。
加载驱动程序是一件非常简单的事情,只需要一行代码。例如,想要使用JDBC-ODBC Bridge,就可用下面代码加载它:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
驱动程序文档会给您需要使用的类名。例如,假设类名是jdbc.DriverXYZ,就可用如下代码行加载驱动程序:
Class.forName("jdbc.DriverXYZ");
不需要创建驱动程序的实例,然后再用DriverManager注册它,因为调用Class.forName将会自动处理这些事情。如果要创建自己的实例,就会创建一个不必要的副本,但这并没有害处。
加载驱动程序之后,就可用于创建DBMS连接。
创建连接的第二步是使用合适的驱动程序连接到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是一个开放连接,我们会在下面的例子中用到。 |