已结束支持的版本: 7.0
历史版本。 PostgreSQL 7.0 已结束支持。 请参阅 当前版本手册.
58.5. 载入驱动
在连接数据库之前,你需要载入驱动。有两种可用的方法,哪种最好取决于你的代码。
第一种方法中,你的代码使用
Class.forName() 方法隐式地载入驱动。对于 Postgres,你可以使用:
Class.forName("postgresql.Driver");
这会载入驱动,并且在载入时,驱动会自动向 JDBC 注册自身。
注意:forName() 方法可能抛出 ClassNotFoundException,所以如果驱动不可用,你需要捕获它。
这是最常用的方法,但它把你的代码限制为只使用 Postgres。如果你的代码将来可能访问另一个数据库,并且你不使用我们的扩展,那么建议使用第二种方法。
第二种方法在 JVM 启动时使用 -D 参数把驱动作为参数传递给它。例如:
% java -Djdbc.drivers=postgresql.Driver example.ImageViewer
在这个例子中,JVM 会尝试把载入驱动作为其初始化的一部分。完成后,就会启动 ImageViewer。
现在,这种方法是更好的一种,因为它允许你的代码在不重新编译的情况下与其他数据库一起使用。唯一还需要改变的是 URL,这是接下来要介绍的内容。
最后一点。当你的代码随后尝试打开一个 Connection,并且你得到一个被抛出的 No driver available SQLException 时,这可能是驱动不在类路径中,或者参数中的值不正确造成的。