JDBC (Java Database Connectivity) is a Java API used to connect and interact with a database. It provides a standard set of interfaces for accessing different types of databases using Java programming language.
There are four types of JDBC drivers:
- JDBC-ODBC Bridge Driver: This driver uses an ODBC (Open Database Connectivity) driver to connect to the database. It is suitable for small applications that require connectivity to a single database.
- Native-API Driver: This driver uses the database’s native API to connect to the database. It is platform-dependent and is not suitable for all databases.
- Network Protocol Driver: This driver communicates with the database server using a network protocol specific to the database. It is suitable for all databases that support a network protocol.
- Thin Driver: This driver is fully written in Java and communicates with the database server using a network protocol. It is platform-independent and is suitable for all databases that support a network protocol.
Here is an example of a JDBC program that displays student details from a student table:
public class StudentDetails {
static final String DB_URL = "jdbc:mysql://localhost/STUDENT";
static final String USER = "username";
static final String PASS = "password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
// Register JDBC driver
Class.forName("com.mysql.jdbc.Driver");
// Open a connection
System.out.println("Connecting to database...");
// Execute a query
System.out.println("Creating statement...");
stmt = conn.createStatement();
String sql;
sql = "SELECT id, name, age FROM student";
ResultSet rs = stmt.executeQuery(sql);
// Extract data from result set
while(rs.next()){
//Retrieve by column name
int id = rs.getInt("id");
int age = rs.getInt("age");
//Display values
System.out.print("ID: " + id);
System.out.print(", Name: " + name);
System.out.println(", Age: " + age);
}
// Clean-up environment
rs.close();
stmt.close();
conn.close();
} catch(SQLException se) {
// Handle errors for JDBC
se.printStackTrace();
} catch(Exception e) {
// Handle errors for Class.forName
e.printStackTrace();
} finally {
// finally block used to close resources
try {
if(stmt!=null)
stmt.close();
} catch(SQLException se2) {
} // nothing we can do
try {
if(conn!=null)
conn.close();
} catch(SQLException se) {
se.printStackTrace();
} // end finally try
} // end try
System.out.println("Goodbye!");
}
}
In this program, we first register the JDBC driver, then establish a connection to the database using the provided username and password. We then execute a SQL query to retrieve student details from the student table, and display the results in the console. Finally, we clean up the resources and close the connection.
No comments:
Post a Comment
If you have any doubts, please let me know