↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

不受支持的版本: 6.4
历史版本PostgreSQL 6.4 已于 2003 年 10 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页。

56.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 时, 这可能是驱动不在类路径中,或者参数中的值 不正确造成的。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。