Hello Java enthusiasts after a long break!
Today, we will learn how to connect to a database using the Java programming language. Databases are at the core of application development, and using them correctly can enhance the success of our projects. In this post, I will show you the PostgreSQL database, but you can use the same logic for other databases like MySQL, MongoDB, etc. So, let’s learn how to establish a connection!
1. Installing Required Dependencies
We will use JDBC (Java Database Connectivity) dependency for database connection in Java. First, add the PostgreSQL JDBC to your project in your IDE (like IntelliJ, Eclipse). If you are using Maven, you can add the following dependency to your pom.xml file:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.3.1</version> <!-- Check for the latest version and update here -->
</dependency>
2. Establishing the Database Connection
In this step, we need to create a Connection object to connect to the database. The following code example demonstrates how to connect to a PostgreSQL database:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseConnector {
private static final String URL = "jdbc:postgresql://localhost:5432/database_name"; // You should add your database name at the end of the URL.
private static final String USER = "postgres"; // The default username is postgres. If you changed it, you need to enter that.
private static final String PASSWORD = "your_password";
public static Connection connect() {
Connection connection = null;
// First, we assign null to the connection object to ensure that the connection resets on each method call.
try {
// Attempting to connect inside the try block, if successful, it returns the connection object along with a success message.
connection = DriverManager.getConnection(URL, USER, PASSWORD);
System.out.println("Connection successful!");
} catch (SQLException e) {
// If an error occurs while connecting inside the try block, it goes here and displays the error message.
System.err.println("Connection error: " + e.getMessage());
}
return connection;
}
}
Display More
3. CRUD Operations
Once the database connection is established, you can perform operations like adding, deleting, updating, and reading data. Let me show you an example of adding data:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class UserRepository {
public void addUser(String name, String email) {
// Defining the SQL query to add a new record to the 'users' table.
String sql = "INSERT INTO users (name, email) VALUES (?, ?)";
// Creating a database connection and preparing the query
try (Connection connection = DatabaseConnector.connect();
PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
// Using PreparedStatement to insert the user's name and email into the query.
preparedStatement.setString(1, name);
preparedStatement.setString(2, email);
// Executing the query to add the record to the database.
preparedStatement.executeUpdate();
System.out.println("User added!");
} catch (SQLException e) {
// If any error occurs, the error message will be printed.
System.err.println("Error: " + e.getMessage());
}
}
}
Display More
Establishing a database connection with Java is an important step in making our projects more robust. I hope this guide has been helpful in this regard. If you have any questions or suggestions, please feel free to comment! Let's continue to learn together!
Happy Coding! 🚀