EDB JDBC Connector overview v42.5.4.2

Sun Microsystems created a standardized interface for connecting Java applications to databases, known as Java Database Connectivity (JDBC). The EDB JDBC Connector connects a Java application to a Postgres database.

JDBC driver types

There are currently four types of JDBC drivers, each with its own implementation, use, and limitations. The EDB JDBC Connector is a Type 4 driver.

Type 1 driver

  • This driver type is the JDBC-ODBC bridge.
  • It's limited to running locally.
  • Must have ODBC installed on computer.
  • Must have ODBC driver for specific database installed on computer.
  • Generally can’t run inside an applet because of Native Method calls.

Type 2 driver

  • This is the native database library driver.
  • Uses Native Database library on computer to access database.
  • Generally can’t run inside an applet because of Native Method calls.
  • Must have database library installed on client.

Type 3 driver

  • 100% Java Driver, no native methods.
  • Doesn't require preinstallation on client.
  • Can be downloaded and configured on-the-fly just like any Java class file.
  • Uses a proprietary protocol for talking with a middleware server.
  • Middleware server converts from proprietary calls to DBMS specific calls.

Type 4 driver

  • 100% Java driver, no native methods.
  • Doesn't require preinstallation on client.
  • Can be downloaded and configured on-the-fly just like any Java class file.
  • Unlike Type 3 driver, talks directly with the DBMS server.
  • Converts JDBC calls directly to database specific calls.

The JDBC interface

The following figure shows the core API interfaces in the JDBC specification and how they relate to each other. These interfaces are implemented in the java.sql package.

JDBC Class Relationships

JDBC classes and interfaces

The core API is composed of classes and interfaces. These classes and interfaces work together as shown in the figure:

Core Classes and Interfaces

The JDBC DriverManager

This figure depicts the role of the DriverManager class in a typical JDBC application. The DriverManager acts as the bridge between a Java application and the backend database and determines the JDBC driver to use for the target database.

DriverManager/Drivers

EDB Postgres Advanced Server JDBC Connector compatibility

This is the current version of the driver. Unless you have unusual requirements (running old applications or JVMs), this is the driver you should be using. This driver supports PostgreSQL 10 or higher versions and requires Java 8 or higher versions. It contains support for SSL and the javax.sql package.

Note

Deprecated support for Java 1.6 and 1.7. Previous version of EDB JDBC Connector v42.2.12.3 will continue to support Java 1.6 and 1.7 versions.