Trabajo con bases de datos en Java: PostgreSQL y MongoDB para principiantes

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Trabajo con bases de datos en Java: PostgreSQL y MongoDB para principiantes



El desarrollo moderno en Java rara vez prescinde de la interacción con bases de datos. Independientemente de si estás creando una aplicación web, un servicio móvil o un sistema corporativo, la habilidad de trabajar con bases de datos SQL y NoSQL es una competencia obligatoria. En este artículo, analizaremos cómo conectarse a PostgreSQL (base de datos relacional) y MongoDB (base de datos orientada a documentos) desde Java, realizar operaciones básicas y evitar errores típicos.



El material está dirigido a desarrolladores principiantes que ya conocen los fundamentos de Java (clases, métodos, excepciones) y desean aprender a trabajar con datos. Todos los ejemplos de código se pueden copiar y ejecutar en tu entorno de desarrollo.



1. Preparación del entorno y dependencias



Para trabajar con bases de datos en Java, necesitarás agregar las bibliotecas correspondientes. Usaremos Maven para gestionar las dependencias. Si usas Gradle u otro gestor de compilación, el principio será similar.



Dependencias para PostgreSQL (a través de JDBC)

<dependency>    <groupId>org.postgresql</groupId>    <artifactId>postgresql</artifactId>    <version>42.7.1</version></dependency>


Dependencias para MongoDB (controlador oficial)

<dependency>    <groupId>org.mongodb</groupId>    <artifactId>mongodb-driver-sync</artifactId>    <version>4.11.1</version></dependency>


Después de agregar las dependencias, actualiza el proyecto (Maven → Reload Project). Asegúrate de tener las bases de datos instaladas y en ejecución (localmente o a través de Docker).



2. Trabajo con PostgreSQL en Java



PostgreSQL es una base de datos relacional clásica. Para interactuar con ella desde Java se utiliza JDBC (Java Database Connectivity). Veamos el ciclo completo: conexión, creación de tabla, inserción y lectura de datos.



2.1. Conexión a la base de datos

Creemos una clase PostgresConnector con un método para obtener la conexión:

import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;

public class PostgresConnector { private static final String URL = "jdbc:postgresql://localhost:5432/testdb"; private static final String USER = "postgres"; private static final String PASSWORD = "your_password";

public static Connection getConnection() throws SQLException { return DriverManager.getConnection(URL, USER, PASSWORD); }}


2.2. Creación de tabla e inserción de datos

Usamos Statement y PreparedStatement para ejecutar consultas SQL:

import java.sql.*;

public class PostgresExample { public static void main(String[] args) { String createTableSQL = "CREATE TABLE IF NOT EXISTS users (" + "id SERIAL PRIMARY KEY, " + "name VARCHAR(100) NOT NULL, " + "email VARCHAR(100) UNIQUE NOT NULL)";

String insertSQL = "INSERT INTO users (name, email) VALUES (?, ?)";

try (Connection conn = PostgresConnector.getConnection(); Statement stmt = conn.createStatement()) {

// Creamos la tabla stmt.execute(createTableSQL); System.out.println("Tabla users creada (o ya existe).");

// Insertamos datos mediante PreparedStatement (seguro contra inyección SQL) try (PreparedStatement pstmt = conn.prepareStatement(insertSQL)) { pstmt.setString(1, "Iván Petrov"); pstmt.setString(2, "ivan@example.com"); pstmt.executeUpdate(); System.out.println("Usuario agregado."); }

} catch (SQLException e) { e.printStackTrac

Blogs

Book Recommendations