Trabajo con bases de datos en Java: PostgreSQL y MongoDB

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

Introducción al trabajo con bases de datos en Java

Java es uno de los lenguajes más populares para crear aplicaciones empresariales, y el trabajo con bases de datos (BD) es una parte esencial de dichos proyectos. En el mundo moderno, los desarrolladores a menudo se enfrentan a la elección entre bases de datos relacionales y no relacionales. En este artículo, analizaremos en detalle cómo conectarse y trabajar con dos sistemas populares: PostgreSQL (BD relacional) y MongoDB (BD NoSQL orientada a documentos) desde Java. Aprenderá sobre la configuración de controladores, la ejecución de operaciones CRUD y las mejores prácticas.



1. Trabajo con PostgreSQL en Java

PostgreSQL es una potente base de datos objeto-relacional de código abierto. Para interactuar con ella desde Java se utiliza el controlador JDBC (Java Database Connectivity).



1.1 Conexión del controlador PostgreSQL

Para empezar, agregue la dependencia a su proyecto (Maven):

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


1.2 Establecimiento de la conexión y ejecución de consultas

Ejemplo de conexión a la base de datos mydb en el servidor local:

import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;

public class PostgresExample { public static void main(String[] args) { String url = "jdbc:postgresql://localhost:5432/mydb"; String user = "postgres"; String password = "password";

try (Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement()) {

// Creación de tabla stmt.executeUpdate("CREATE TABLE IF NOT EXISTS users (id SERIAL PRIMARY KEY, name VARCHAR(100), email VARCHAR(100))");

// Inserción de datos stmt.executeUpdate("INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com')");

// Consulta de datos ResultSet rs = stmt.executeQuery("SELECT * FROM users"); while (rs.next()) { System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name")); } } catch (Exception e) { e.printStackTrace(); } }}


1.3 Uso de PreparedStatement

Para protegerse contra inyecciones SQL, use siempre PreparedStatement:

String sql = "INSERT INTO users (name, email) VALUES (?, ?)";try (PreparedStatement pstmt = conn.prepareStatement(sql)) {    pstmt.setString(1, "Bob");    pstmt.setString(2, "bob@example.com");    pstmt.executeUpdate();}


2. Trabajo con MongoDB en Java

MongoDB es una base de datos NoSQL que almacena datos en forma de documentos similares a JSON. Para trabajar con ella se utiliza el MongoDB Java Driver oficial.



2.1 Conexión del controlador MongoDB

Agregue la dependencia en Maven:

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


2.2 Conexión a la base de datos y operaciones CRUD

Ejemplo de trabajo con la colección users:

import com.mongodb.client.MongoClient;import com.mongodb.client.MongoClients;import com.mongodb.client.MongoCollection;import com.mongodb.client.MongoDatabase;import org.bson.Document;

public class MongoDBExample { public static void main(String[] args) { // Conexión try (MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017")) { MongoDatabase database = mongoClient.getDatabase("mydb"); MongoCollection<Document> collect

Blogs

Book Recommendations