redis
So stellen Sie mit Jedis eine Verbindung zu Redis in Java her
Suche…
Einführung
Es gibt mehr als zehn verschiedene Client-Bibliotheken, die mit Redis in Java verwendet werden können. Einer der beliebtesten Kunden ist Jedis .
Bemerkungen
Weitere Informationen:
Jedis bekommen
Die Jedis-Bibliothek wird im Allgemeinen zu einem Java-Projekt hinzugefügt, indem ein in die Build-Umgebung des Projekts integriertes Abhängigkeitsverwaltungssystem verwendet wird. Zwei beliebte Java-Build-Systeme sind Maven und Gradle.
Gradle verwenden
Um die Jedis-Bibliothek zu einem Gradle-Projekt hinzuzufügen, müssen Sie ein Repository konfigurieren und eine Abhängigkeit hinzufügen. Das folgende Snippet zeigt, wie Sie die Version 2.9.0 der Jedis-Bibliothek zu einem Gradle-Projekt hinzufügen.
repositories {
mavenCentral()
}
dependencies {
compile 'redis.clients:jedis:2.9.0'
}
Maven benutzen
Um Jedis einem Maven-Projekt hinzuzufügen, müssen Sie Ihrer Abhängigkeitsliste eine Abhängigkeit hinzufügen und die Koordinaten der Bibliothek angeben. Das folgende Snippet wird zu Ihrer pom.xml-Datei hinzugefügt:
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
Verbindung zu Redis
Pool verwenden
Die meisten Codes möchten eine Verbindung zu Redis mithilfe eines Pools gemeinsam genutzter Verbindungsobjekte herstellen. Die Verbindung zu Redis über einen Pool erfordert zwei verschiedene Codeblöcke. Zum Zeitpunkt der Initialisierung muss Ihre Anwendung den Verbindungspool erstellen:
JedisPoolConfig poolCfg = new JedisPoolConfig();
poolCfg.setMaxTotal(3);
pool = new JedisPool(poolCfg, hostname, port, 500, password, false);
Die JedisPoolConfig
bietet Optionen zum JedisPoolConfig
des Pools.
Wenn Ihre Anwendung ihre Arbeitslast verarbeitet, müssen Sie eine Verbindung aus dem gemeinsam genutzten Pool mit folgendem Code herstellen:
try (Jedis jedis = pool.getResource()) {
...
}
Es Jedis
sich, das Jedis
Verbindungsobjekt innerhalb eines Try-with-Resources-Blocks aus dem Pool Jedis
.
Ohne Pools
In einigen Fällen, beispielsweise bei einer einfachen Anwendung oder einem Integrationstest, möchten Sie möglicherweise nicht mit gemeinsam genutzten Pools arbeiten und stattdessen das Jedis
Verbindungsobjekt direkt erstellen. Dies kann mit dem folgenden Code erreicht werden:
try (Jedis jedis = new Jedis(hostname, port)) {
jedis.connect();
jedis.auth(password);
jedis.select(db);
. . .
}
Es empfiehlt sich, das Jedis-Clientobjekt innerhalb eines Try-with-Resources-Blocks zu erstellen.
Ausführen grundlegender Get / Set-Befehle
Sobald Sie eine Verbindung zu Redis hergestellt haben, können Sie mit dem Jedis
Verbindungsobjekt Werte Jedis
und einstellen
Erhalten
String value = jedis.get(myKey);
einstellen
jedis.put(myKey, "some value");
Befehle ausführen
Um einen Redis-Befehl mit Jedis auszuführen, führen Sie Methodenaufrufe für das Jedis
Objekt aus, das Sie aus dem Pool erstellt haben. Jedis stellt Redis-Befehle als Methodenaufrufe zur Verfügung. Einige Beispiele sind:
- 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)
Wenn Sie den Wert eines String-Schlüssels in Redis festlegen möchten, würden Sie einen Codeblock verwenden, der folgendermaßen aussieht:
try (Jedis jedis = pool.getResource()) {
String myKey = "users:20";
String myValue = "active";
jedis.set(myKey, myValue);
}