Cliente Redis (Jedis) para Java: guía completa con ejemplos

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

¿Qué es Jedis y para qué sirve?

\n\n

Jedis es una biblioteca Java minimalista, ligera y muy popular para trabajar con Redis (Remote Dictionary Server). Redis es un almacén de datos en memoria de alto rendimiento que se utiliza a menudo como base de datos, caché y broker de mensajes. Jedis proporciona una API simple e intuitiva para interactuar con un servidor Redis desde aplicaciones Java.

\n\n

¿Para qué sirve Jedis? Si su aplicación Java utiliza Redis para almacenamiento en caché, gestión de sesiones, colas de tareas o almacenamiento de datos temporales, Jedis es la forma más directa y eficiente de conectarse a Redis. Soporta todas las estructuras de datos principales de Redis (cadenas, listas, conjuntos, hashes, conjuntos ordenados), así como funciones como Pub/Sub, transacciones y scripts Lua.

\n\n

Jedis es conocido por su simplicidad y la ausencia de dependencias innecesarias. A diferencia de clientes más pesados (por ejemplo, Lettuce), Jedis no requiere configuración de un pool de conexiones de fábrica (aunque lo soporta), lo que lo convierte en una opción ideal para proyectos pequeños y medianos donde la simplicidad y la velocidad de desarrollo son importantes.

\n\n

Instalación de Jedis

\n\n

Jedis se distribuye a través de Maven Central. Para agregar la biblioteca a su proyecto, debe agregar la dependencia en el archivo pom.xml (para Maven) o build.gradle (para Gradle).

\n\n

Instalación mediante Maven

\n

Agregue el siguiente bloque a su pom.xml:

\n
<dependency>\n    <groupId>redis.clients</groupId>\n    <artifactId>jedis</artifactId>\n    <version>5.1.0</version> <!-- Use la última versión estable -->\n</dependency>
\n\n

Instalación mediante Gradle

\n

Agregue la línea a su build.gradle:

\n
implementation 'redis.clients:jedis:5.1.0'
\n\n

Importante: La versión 5.x es la última actualización importante de Jedis que incluye soporte para Redis 7.x y nuevas funcionalidades. Se recomienda usar siempre la última versión estable para obtener todas las correcciones y nuevas funciones.

\n\n

Inicio rápido con ejemplo de código

\n\n

Escribamos un programa simple que se conecte a Redis, guarde un valor y lo lea de vuelta.

\n\n

Supongamos que el servidor Redis se está ejecutando localmente en el puerto estándar 6379.

\n\n
import redis.clients.jedis.Jedis;\n\npublic class JedisQuickStart {\n    public static void main(String[] args) {\n        // 1. Crear conexión a Redis\n        // Por defecto localhost:6379\n        try (Jedis jedis = new Jedis("localhost", 6379)) {\n            \n            // 2. Verificar la conexión (PING)\n            String response = jedis.ping();\n            System.out.println("Respuesta de Ping: " + response); // Debería ser "PONG"\n\n            // 3. Guardar un valor\n            jedis.set("user:1000:name", "Alice");\n            jedis.set("user:1000:age", "30");\n\n            // 4. Leer un valor\n            String name = jedis.get("user:1000:name");\n            String age = jedis.get("user:1000:age");\n\n            System.out.println("Nombre de usuario: " + name);\n            System.out.println("Edad de usuario: " + age);\n\n            // 5. Verificar la existencia de una clave\n            boolean exists = jedis.exists("user:1000:name");\n            System.out.println("La clave existe: " + exists);\n\n            // 6. Eliminar una clave\n            long deleted = jedis.del("user:1000:age");\n            System.out.println("Claves eliminadas: " + deleted);\n        }\n    }\n}
\n\n

Este ejemplo demuestra el trabajo básico: conexión, escritura, lectura, verificación de existencia y eliminación. Observe el uso de try-with-resources — esto garantiza que la conexión se cierre después de su uso.

\n\n

Métodos principales de Jedis

\n\n

Jedis proporciona cientos de métodos que cubren todas las capacidades de Redis. A continuación se presentan los 10 más utilizados

Recommendations