Skip to main content

Types of JDBC Drivers

There are 4 types of drivers are present in JDBC. Each driver will have their advantages as well as disadvantages. Lets take a look into all drivers.

Type 1: JDBC-ODBC driver:
This driver receieves all JDBC calls and sends to ODBC ( Open Database Connectivity). ODBC driver understands these calls and communicates with the database library provided by the vendor. So, the ODBC driver, and the vendor database library must be present on the client machine.

Advantages: The JDBC-ODBC Bridge allows access to almost any database, since databases ODBC drivers are already available on the client machine.

Disadvantages: The performance of this driver is poor, since the JDBC call goes through the bridge to the ODBC driver, then to the native database connectivity library. The result comes back through the reverse process.


Type 2: Native API-partly Java driver:
It converts JDBC calls into database specific calls with the help of vendor database library. The type2 driver communicates directly with the database server. It requires that some binary code be present on the client machine.

Advantages: Type 2 driver typically offers better performance than the JDBC-ODBC Bridge.

Disadvantages: The vendor database library needs to be loaded on each client machine. This is the reason, type 2 drivers can not be used for the Internet. Type 2 driver shows lower performance than the type 3 and type4 drivers.


Type 3: Net Protocol – pure Java driver:
It follows three tier architecture where JDBC requests are passed through the network to a middle-tier (Net) server. The middle-tier translates the requests to the database specific library and then sends it to the database server. The database server then executes the request and gives back the results.

Advantages: This driver is Server-based, so there is no need for any vendor database library to be present on the client machine.

Disadvantages: Type 3 driver requires database specific coding to be done in the middle tier. Maintenance of the middle-tier becomes costly.


Type 4: Native protocol – pure Java driver:
This driver converts JDBC calls into the vendor-specific database management system (DBMS) protocol. So, that client applications can communicate directly with the database server. Level 4 driver completely implemented in java to achieve platform independence and eliminate deployment administration issues. Generally type 4 drivers are used on Internet.

Advantages: This driver has better performance than type 1 and type 2. Also, there is no need to install any special software on the client or server.

Disadvantages: With type 4 driver, the user needs a different driver for each database. For example, we need to communicate with Oracle server we need Oracle driver and to communicate with Sybase server, we need Sybase driver.

Related Posts:

Comments

Popular posts from this blog

JNDI configuration for Tomcat 9 with Oracle

In this article, I am going to place the required source code to get data from the table by using the JNDI configuration. Below are the environment details that I have configured currently. Windows - 7 Oracle - 10g Tomcat - 9 JDK - 8 Eclipse Oxygen Ojdbc6 jar required First, we need to create the Dynamic Web Project. If you don't know how to do <Click Here>. I have faced a lot of issues before getting the output like 405, No driver class to load, etc. I am using JSP & Servlets in the current explanation. Before started writing the application logic, we need to do the below configuration in the installed tomcat directory. Place OJDBC6.jar in the Tomcat LIB directory. Add this Resource under <GlobalNamingResources> in Server.xml file which is present under the conf directory in Tomcat. < Resource name = "jdbc/myoracle" global= "jdbc/myoracle" auth = "Container" type= "javax.sql.DataSource" driverClass...

Prime, Fibonacci and Factorial number with example in java

Prime number, Fibonacci series and Factorial number programs are most commonly asked questions in interview. Read this article to know what is and how to write programs for prime number, fibonacci series and factorial number. Prime Number: prime number is natural number greater than 1 that has no positive divisor other than 1 and itself. A natural number greater than 1 is not a prime number, is called Composite number . For example, 7 is a prime number. Because it can divide with 1 and 7 only. Where as 8 is composite number. Since it has the divisor 2 and 4 in addition to the 1 and 8. The below example represents the finding the passing number is prime number or not. If the passing number is prime number it will print true otherwise it will print false. package com . javatbrains . practice ; public class PrimeNumber { public boolean isPrimeNumber ( int number ) { if ( number <= 1 ) return false ; // There's only one ...

JVM, JRE and JDK in Java

JVM, JRE and JDK are the most basic common concepts to know in java. These are the basic features to understand how Java architecture works? JVM stands for Java Virtual Machine, which doesn't have any physical directories created in java installation. JRE stands for Java Runtime Environment, which creates the directory under Java installation path and also present in JDK. JDK stands for Java Development Kit, which creates the directory in Java installation path and also it has it's own JRE. Since we have already learn that Java is platform independent means if we have implemented any of the java class in one environment, it will be executed in any other environment and provides the same output. But, JVM, JRE and JDK all are platform dependent . So that, for windows, linux, unix, mac, solaris..etc has it's own JVM, JRE and JDK. One will be not compatible with other environments. While installing the Java, we might come to know a bit about JRE and JDK. But, JVM is the other...