📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
✅ Some premium posts are free to read — no account needed. Follow me on Medium to stay updated and support my writing.
🎓 Top 10 Udemy Courses (Huge Discount): Explore My Udemy Courses — Learn through real-time, project-based development.
▶️ Subscribe to My YouTube Channel (172K+ subscribers): Java Guides on YouTube
Introduction
What is JDBC?
Java Database Connectivity (JDBC) is an API that enables Java applications to interact with databases. It provides methods to query and update data in a database, as well as to retrieve metadata about the database itself.
PostgreSQL Database
PostgreSQL is a powerful, open-source relational database system known for its robustness, flexibility, and standards compliance.
Table of Contents
- Setting Up the PostgreSQL Database
- Adding PostgreSQL JDBC Driver to Your Project
- Establishing a Database Connection
- Executing SQL Queries
- Retrieving Data
- Closing the Connection
- Conclusion
1. Setting Up the PostgreSQL Database
First, create a database named jdbc_example
and a products
table within it. Open your PostgreSQL command line or any PostgreSQL client and execute the following commands:
CREATE DATABASE jdbc_example;
\c jdbc_example
CREATE TABLE products (
id SERIAL PRIMARY KEY,
name VARCHAR(100),
description VARCHAR(255),
price DECIMAL(10, 2)
);
2. Adding PostgreSQL JDBC Driver to Your Project
To interact with a PostgreSQL database, you need to add the PostgreSQL JDBC driver to your project. If you are using Maven, add the following dependency to your pom.xml
file:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.24</version>
</dependency>
3. Establishing a Database Connection
We will start by establishing a connection to the PostgreSQL database using JDBC.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class PostgreSQLJDBCExample {
private static final String URL = "jdbc:postgresql://localhost:5432/jdbc_example";
private static final String USER = "your_username";
private static final String PASSWORD = "your_password";
public static Connection getConnection() throws SQLException {
return DriverManager.getConnection(URL, USER, PASSWORD);
}
public static void main(String[] args) {
try (Connection connection = getConnection()) {
if (connection != null) {
System.out.println("Connected to the PostgreSQL database!");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
4. Executing SQL Queries
We can use the Connection
interface to create a Statement
object and execute SQL queries. Here, we will insert a record into the products
table.
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
public class InsertProductExample {
public static void main(String[] args) {
String insertSQL = "INSERT INTO products (name, description, price) VALUES ('Laptop', 'Dell Inspiron', 75000.00)";
try (Connection connection = PostgreSQLJDBCExample.getConnection();
Statement statement = connection.createStatement()) {
int rowsInserted = statement.executeUpdate(insertSQL);
System.out.println(rowsInserted + " row(s) inserted!");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
5. Retrieving Data
We can use the Connection
interface to create a Statement
object and execute a query to retrieve data from the products
table.
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class SelectProductExample {
public static void main(String[] args) {
String selectSQL = "SELECT * FROM products";
try (Connection connection = PostgreSQLJDBCExample.getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(selectSQL)) {
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
String description = resultSet.getString("description");
double price = resultSet.getDouble("price");
System.out.println("ID: " + id + ", Name: " + name + ", Description: " + description + ", Price: " + price);
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
6. Closing the Connection
Using the try-with-resources statement ensures that the connection is closed automatically. This is important to free up database resources.
import java.sql.Connection;
import java.sql.SQLException;
public class CloseConnectionExample {
public static void main(String[] args) {
try (Connection connection = PostgreSQLJDBCExample.getConnection()) {
if (connection != null) {
System.out.println("Connected to the PostgreSQL database!");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Conclusion
In this tutorial, we have covered the basics of using the JDBC Connection
interface to interact with a PostgreSQL database. We demonstrated how to establish a connection, execute SQL queries, retrieve data, and close the connection using the try-with-resources statement. This guide should help you get started with JDBC and understand how to use the Connection
interface effectively with PostgreSQL.
Comments
Post a Comment
Leave Comment