【问题标题】:What is the difference between JDBC Driver and Driver class? [closed]JDBC Driver 和 Driver 类有什么区别? [关闭]
【发布时间】:2013-11-29 18:09:02
【问题描述】:

driver是指ojdbc14.jarclasses12.jaroracle.jdbc.driver.OracleDriver中的所有类吗? driver这个词在JDBC中有两个上下文吗?

在我找到的 IBM 网站上,

JDBC API 定义了程序员可以使用的 Java 接口和类 用于连接数据库和发送查询。一个 JDBC 驱动程序实现 这些接口和类适用于特定的 DBMS 供应商。

OracleDriver类的Oracle文档中

registerDriver() 方法将“驱动程序”类作为输入,即 一个实现java.sql.Driver接口的类,就是这种情况 使用 OracleDriver。

【问题讨论】:

    标签: java jdbc


    【解决方案1】:

    Oracle JDBC 驱动程序捆绑在 ojdbc14.jar 中。主类是oracle.jdbc.driver.OracleDriver,可以看作是一个起点。

    JAR 文件还包含用于绑定到不同数据类型(例如 Date 和 Long)、连接池、数据源等的其他类,由 OracleDriver 类使用。

    希望这会有所帮助。

    【讨论】:

    • 感谢您的回复。我的问题是所有这些类一起被称为驱动程序还是只是 oracle.jdbc.driver.OracleDriver 是?
    • 所有这些类共同构成了 Oracle JDBC 驱动程序。就像你用Java写一个名为Foo的大型应用程序,这个应用程序会有很多类,其中一个包含main()方法,也可以命名为Foo.
    【解决方案2】:

    正如您引用的文本所说,术语“驱动程序类”用于表示实现java.sql.Driver 接口的类。我们需要知道哪个类是驱动程序类,因为我们需要加载该类,因为它是驱动程序自行安装或作为 Java 中的 JDBC 驱动程序安装的入口点。这就是为什么有这个术语的原因。我承认这不是最清楚的。

    【讨论】:

      【解决方案3】:

      是的,正如 JB Nizet 所说,oracle.jdbc.driver.OracleDriver 是主要/起始类。在面向对象编程中,您可以在不同的类中为不同的目的建模函数。例如,当驱动程序的主类看到 Java 日期并需要将其转换为 Oracle 日期对象时,它会调用另一个专门用于此目的的类。每种数据类型由不同的类处理,连接池/数据源等都是在不同包中管理的独立类。它们共同构成了一个有效的 JDBC 驱动程序。

      【讨论】:

        猜你喜欢
        • 2015-11-24
        • 2019-01-19
        • 2016-07-04
        • 1970-01-01
        • 2015-01-20
        • 2023-03-12
        • 1970-01-01
        • 1970-01-01
        • 2020-05-20
        相关资源
        最近更新 更多