- Java & MySQL - Discussion
- Java & MySQL - Useful Resources
- Java & MySQL - Quick Guide
- Java & MySQL - Sorting Data
- Java & MySQL - Like Clause
- Java & MySQL - Where Clause
- Java & MySQL - Delete Records
- Java & MySQL - Update Records
- Java & MySQL - Select Records
- Java & MySQL - Insert Records
- Java & MySQL - Drop Tables
- Java & MySQL - Create Tables
- Java & MySQL - Drop Database
- Java & MySQL - Select Database
- Java & MySQL - Create Database
- Java & MySQL - Streaming Data
- Batch Processing - PreparedStatement
- Batch Processing - Statement
- Java & MySQL - Batch Processing
- Java & MySQL - SavePoint Transactions
- Java & MySQL - Commit & Rollback
- Java & MySQL - Transactions
- Java & MySQL - Update Result Set
- Java & MySQL - View Result Set
- Java & MySQL - Navigate Result Set
- Java & MySQL - Result Set
- Java & MySQL - CallableStatement
- Java & MySQL - PreparedStatement
- Java & MySQL - Statement
- Java & MySQL - Exceptions
- Java & MySQL - Connections
- Java & MySQL - Sample Code
- Java & MySQL - Environment Setup
- Java & MySQL - Overview
- Java & MySQL - Home
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Java & MySQL - Overview
JDBC stands for Java Database Connectivity, which is a standard Java API for database-independent connectivity between the Java programming language and a wide range of databases.
The JDBC pbrary includes APIs for each of the tasks mentioned below that are commonly associated with database usage.
Making a connection to a database.
Creating SQL or MySQL statements.
Executing SQL or MySQL queries in the database.
Viewing & Modifying the resulting records.
Fundamentally, JDBC is a specification that provides a complete set of interfaces that allows for portable access to an underlying database. Java can be used to write different types of executables, such as −
Java Apppcations
Java Applets
Java Servlets
Java ServerPages (JSPs)
Enterprise JavaBeans (EJBs).
All of these different executables are able to use a JDBC driver to access a database, and take advantage of the stored data.
JDBC provides the same capabipties as ODBC, allowing Java programs to contain database-independent code.
Pre-Requisite
Before moving further, you need to have a good understanding of the following two subjects −
JDBC Architecture
The JDBC API supports both two-tier and three-tier processing models for database access but in general, JDBC Architecture consists of two layers −
JDBC API − This provides the apppcation-to-JDBC Manager connection.
JDBC Driver API − This supports the JDBC Manager-to-Driver Connection.
The JDBC API uses a driver manager and database-specific drivers to provide transparent connectivity to heterogeneous databases.
The JDBC driver manager ensures that the correct driver is used to access each data source. The driver manager is capable of supporting multiple concurrent drivers connected to multiple heterogeneous databases.
Following is the architectural diagram, which shows the location of the driver manager with respect to the JDBC drivers and the Java apppcation −
Common JDBC Components
The JDBC API provides the following interfaces and classes −
DriverManager − This class manages a pst of database drivers. Matches connection requests from the java apppcation with the proper database driver using communication sub protocol. The first driver that recognizes a certain subprotocol under JDBC will be used to estabpsh a database Connection.
Driver − This interface handles the communications with the database server. You will interact directly with Driver objects very rarely. Instead, you use DriverManager objects, which manages objects of this type. It also abstracts the details associated with working with Driver objects.
Connection − This interface with all methods for contacting a database. The connection object represents communication context, i.e., all communication with database is through connection object only.
Statement − You use objects created from this interface to submit the SQL statements to the database. Some derived interfaces accept parameters in addition to executing stored procedures.
ResultSet − These objects hold data retrieved from a database after you execute an SQL query using Statement objects. It acts as an iterator to allow you to move through its data.
SQLException − This class handles any errors that occur in a database apppcation.
The JDBC 4.0 Packages
The java.sql and javax.sql are the primary packages for JDBC 4.0. This is the latest JDBC version at the time of writing this tutorial. It offers the main classes for interacting with your data sources.
The new features in these packages include changes in the following areas −
Automatic database driver loading.
Exception handpng improvements.
Enhanced BLOB/CLOB functionapty.
Connection and statement interface enhancements.
National character set support.
SQL ROWID access.
SQL 2003 XML data type support.
Annotations.