Ricerca…


introduzione

Esistono più di dieci diverse librerie client da utilizzare con Redis in Java. Uno dei clienti più popolari è Jedis .

Osservazioni

Ulteriori informazioni:

Ottenere Jedis

La libreria Jedis viene generalmente aggiunta al progetto Java utilizzando un sistema di gestione delle dipendenze integrato nell'ambiente di generazione del progetto. Due famosi sistemi di build Java sono Maven e Gradle.

Usando Gradle

Per aggiungere la libreria Jedis a un progetto Gradle, è necessario configurare un repository e aggiungere una dipendenza. Il seguente frammento mostra come aggiungere la versione 2.9.0 della libreria Jedis a un progetto Gradle.

repositories {
    mavenCentral()
}

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

Usando Maven

Per aggiungere Jedis a un progetto Maven, devi aggiungere una dipendenza all'elenco delle dipendenze e fornire le coordinate della libreria. Il seguente frammento verrà aggiunto al tuo file pom.xml:

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

Connessione a Redis

Usare una piscina

La maggior parte del codice vorrà connettersi a Redis usando un pool di oggetti di connessione condivisi. Il collegamento a Redis tramite pool richiede due blocchi di codice diversi. Al momento dell'inizializzazione, l'applicazione deve creare il pool di connessioni:

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

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

JedisPoolConfig fornisce opzioni per l'ottimizzazione del pool.

Poiché l'applicazione elabora il suo carico di lavoro, sarà necessario ottenere una connessione dal pool condiviso usando il seguente codice:

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

        ...
    }

La migliore pratica è ottenere l'oggetto connessione Jedis dal pool all'interno di un blocco try-with-resources.

Senza piscine

In alcuni casi, ad esempio una semplice applicazione o un test di integrazione, potresti non voler gestire i pool condivisi e invece creare direttamente l'oggetto di connessione Jedis . Questo può essere ottenuto con il seguente codice:

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

    . . .
}

Di nuovo, la procedura migliore è creare l'oggetto client Jedis all'interno di un blocco try-with-resources.

Esecuzione dei comandi Get / Set di base

Una volta stabilita una connessione a Redis, è possibile ottenere e impostare valori utilizzando l'oggetto di connessione Jedis :

Ottenere

String value = jedis.get(myKey);

Impostato

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

Esecuzione di comandi

Per eseguire un comando Redis usando Jedis, si effettuano chiamate di metodo contro l'oggetto Jedis creato dal pool. Jedis espone i comandi Redis come chiamate di metodo, alcuni esempi sono:

- 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)

Se si desidera impostare il valore di una chiave String in Redis, si utilizzerà un blocco di codice simile 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
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow