Buscar..


Introducción

Hay más de diez bibliotecas de clientes diferentes para usar con Redis en Java. Uno de los clientes más populares es Jedis .

Observaciones

Más información:

Obteniendo Jedis

La biblioteca Jedis generalmente se agrega al proyecto Java utilizando un sistema de administración de dependencias integrado en el entorno de compilación del proyecto. Dos sistemas de construcción Java populares son Maven y Gradle.

Usando gradle

Para agregar la biblioteca Jedis a un proyecto de Gradle, necesitará configurar un repositorio y agregar una dependencia. El siguiente fragmento de código muestra cómo agregar la versión 2.9.0 de la biblioteca Jedis a un proyecto de Gradle.

repositories {
    mavenCentral()
}

dependencies {
    compile 'redis.clients:jedis:2.9.0'
}

Usando maven

Para agregar Jedis a un proyecto de Maven, debe agregar una dependencia a su lista de dependencias y proporcionar las coordenadas de la biblioteca. El siguiente fragmento de código se agregaría a su archivo pom.xml:

<dependencies>
    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>2.9.0</version>
    </dependency>
</dependencies>

Conectando a Redis

Usando una piscina

La mayoría de los códigos querrán conectarse a Redis utilizando un conjunto de objetos de conexión compartidos. Conectarse a Redis usando un grupo implica dos bloques de código diferentes. En el momento de la inicialización, su aplicación necesita crear el grupo de conexiones:

    JedisPoolConfig poolCfg = new JedisPoolConfig();
    poolCfg.setMaxTotal(3);

    pool = new JedisPool(poolCfg, hostname, port, 500, password, false);

El JedisPoolConfig proporciona opciones para ajustar el grupo.

A medida que la aplicación procesa su carga de trabajo, deberá obtener una conexión del grupo compartido utilizando el siguiente código:

    try (Jedis jedis = pool.getResource()) {

        ...
    }

La mejor práctica es obtener el objeto de conexión Jedis de la agrupación dentro de un bloque try-with-resources.

Sin piscinas

En algunos casos, como una aplicación simple o una prueba de integración, es posible que no desee tratar con grupos compartidos y, en su lugar, crear el objeto de conexión Jedis directamente. Eso se puede lograr con el siguiente código:

try (Jedis jedis = new Jedis(hostname, port)) {
    jedis.connect();
    jedis.auth(password);
    jedis.select(db);

    . . .
}

Una vez más, la mejor práctica es crear el objeto cliente Jedis dentro de un bloque try-with-resources.

Ejecutando Comandos básicos de Get / Set

Una vez que haya establecido una conexión con Redis, puede obtener y establecer valores utilizando el objeto de conexión Jedis :

Obtener

String value = jedis.get(myKey);

Conjunto

jedis.put(myKey, "some value");

Comandos de ejecución

Para ejecutar un comando Redis utilizando Jedis, realice llamadas de método contra el objeto Jedis que creó desde el grupo. Jedis expone los comandos de Redis como llamadas de método, algunos ejemplos son:

- String get(String key) 
- Long geoadd(String key, double longitude, double latitude, String member)
- List<String> hmget(String key, String... fields)
- Long hsetnx(String key, String field, String value)

Si quisiera establecer el valor de una clave de cadena en Redis, usaría un bloque de código similar a:

try (Jedis jedis = pool.getResource()) {

   String myKey = "users:20";
   String myValue = "active";

   jedis.set(myKey, myValue);
}


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow