4.2.?初始化驱动

主要描述如何在程序里装载和初始化JDBC驱动。

  1. 导入JDBC

    任何使用JDBC的源程序都需要输入java.sql包。

    import java.sql.*;
  2. 装载驱动

    在于数据库连接之前,需要装载驱动。有两种方法,哪种更好取决于使用的代码。

    • 代码用Class.forName()方法明确地装载驱动。对于UXDB需要使用:

      Class.forName("com.uxsino.uxdb.Driver");

      来装载驱动,并且在装载时,驱动将自动在JDBC注册。

      注意

      forName()方法可能抛出一个ClassNotFoundException,所以如果驱动不可获得时需要捕获它。

      这是最常用的方法,但是会把代码限制于UXDB专用。如果代码以后还要访问其他数据库,并且不想使用任何UXDB相关的扩展,那么还有第二种方法可用。

    • 把驱动做为参数在JVM启动时传递给它,使用-D参数。比如:

      java -D jdbc.drivers= com.uxsino.uxdb.Driver example.ImageViewer

      在这个例子里,JVM将试图把驱动作为它的初始化的一部分装载。 一旦完成,启动ImageViewer:

      现在这个方法更好一点,因为它允许代码用于其他数据库,而不用重新编译代码。唯一要修改的东西是URL。

      当代码试图打开一个Connection,而收到一个抛出的No driver available SQLException,这可能是因为驱动不在类路径里,或者参数值不正确。

  3. 数据库连接

    在JDBC里,数据库是用URL(Uniform Resource Locator统一资源定位符)表示的。在UXDB中,可以由下面几种格式之一表示:

    • jdbc:uxdb:database

    • jdbc:uxdb://host/database

    • jdbc:uxdb://host:port/database

    表?4.1.?数据库连接参数

    名称含义
    host服务器的主机名。缺省是localhost。要想声明一个IPv6的地址,必须把host参数用方括弧包围起来,比如:jdbc:uxdb://[::1]:5740/accounting
    port服务器监听的端口号。缺省时是UXDB标准的端口号(5432)
    database数据库名

    要连接数据库,需要从JDBC获取一个Connection实例,会用到DriverManager.getConnection()方法。

    Connection conn = DriverManager.getConnection(url, username, password);
  4. 关闭连接

    关闭数据库连接,只需要对Connection调用close()方法:

    conn.close();
XML 地图 | Sitemap 地图