JDBC drivers implement the defined interfaces in the JDBC API, for interacting with your database server. The Java.sql package that ships with JDK, contains various classes with their behaviours defined and their actual implementaions are done in third-party drivers. Third party vendors implement the java.sql.Driver interface in their database driver.
JDBC
Drivers Types
JDBC driver implementations vary because of the wide
variety of operating systems and hardware platforms in which Java operates. Sun
has divided the implementation types into four categories, Types 1, 2, 3, and
4.
Type
1 − JDBC-ODBC Bridge Driver
In a Type 1 driver, a JDBC bridge is used to access
ODBC drivers installed on each client machine. Using ODBC, requires configuring
on your system a Data Source Name (DSN) that represents the target database.
Type
2 − JDBC-Native API
In a Type 2 driver, JDBC API calls are converted
into native C/C++ API calls, which are unique to the database. These drivers
are typically provided by the database vendors and used in the same manner as
the JDBC-ODBC Bridge. The vendor-specific driver must be installed on each
client machine.
Type
3 − JDBC-Net pure Java
In a Type 3 driver, a three-tier approach is used to
access databases. The JDBC clients use standard network sockets to communicate
with a middleware application server. The socket information is then translated
by the middleware application server into the call format required by the DBMS,
and forwarded to the database server.
Type
4 − 100% Pure Java
In a Type 4 driver, a pure Java-based driver
communicates directly with the vendor's database through socket connection.
This is the highest performance driver available for the database and is
usually provided by the vendor itself. This kind of driver is extremely flexible, you don't need to install
special software on the client or server. Further, these drivers can be
downloaded dynamically.
NOTE:
Which
Driver to be Used?
If you are accessing one type of database, such as
Oracle, Sybase, or IBM, the preferred driver type is 4.
If your Java application is accessing multiple types
of databases at the same time, type 3 is the preferred driver.
Type 2 drivers are useful in situations, where a
type 3 or type 4 driver is not available yet for your database.
The type 1 driver is not considered a
deployment-level driver, and is typically used for development and testing
purposes only.
No comments:
Post a Comment