Zoeken…


Invoering

Er zijn meer dan tien verschillende clientbibliotheken om te gebruiken met Redis in Java. Een van de meest populaire klanten is Jedis .

Opmerkingen

Verdere informatie:

Jedis halen

De Jedis-bibliotheek wordt over het algemeen toegevoegd aan het Java-project met behulp van een afhankelijkheidsbeheersysteem dat is ingebouwd in de buildomgeving van het project. Twee populaire Java-buildsystemen zijn Maven en Gradle.

Gradle gebruiken

Om de Jedis-bibliotheek aan een Gradle-project toe te voegen, moet u een repository configureren en een afhankelijkheid toevoegen. Het volgende fragment laat zien hoe u versie 2.9.0 van de Jedis-bibliotheek kunt toevoegen aan een Gradle-project.

repositories {
    mavenCentral()
}

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

Maven gebruiken

Als u Jedis wilt toevoegen aan een Maven-project, moet u een afhankelijkheid toevoegen aan uw lijst met afhankelijkheid en de coördinaten van de bibliotheek opgeven. Het volgende fragment zou aan uw pom.xml-bestand worden toegevoegd:

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

Verbinding maken met Redis

Een zwembad gebruiken

De meeste code wil verbinding maken met Redis met een pool van gedeelde verbindingsobjecten. Verbinding maken met Redis met behulp van een pool omvat twee verschillende codeblokken. Bij initialisatie moet uw toepassing de verbindingspool maken:

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

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

De JedisPoolConfig biedt opties voor het afstemmen van de pool.

Aangezien uw toepassing de werklast ervan verwerkt, moet u een verbinding van de gedeelde pool krijgen met de volgende code:

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

        ...
    }

Best practice is om het Jedis verbindingsobject uit de pool te halen binnen een try-with-resources-blok.

Zonder zwembaden

In sommige gevallen, zoals een eenvoudige toepassing of een integratietest, wilt u misschien niet omgaan met gedeelde pools en in plaats daarvan rechtstreeks het Jedis verbindingsobject maken. Dat kan worden bereikt met de volgende code:

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

    . . .
}

Nogmaals, de beste praktijk is om het Jedis-clientobject te maken binnen een try-with-resources-blok.

Basisopdrachten voor ophalen / instellen uitvoeren

Nadat u een verbinding met Redis hebt gemaakt, kunt u waarden Jedis en instellen met behulp van het Jedis verbindingsobject:

Krijgen

String value = jedis.get(myKey);

reeks

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

Commando's uitvoeren

Om een Redis-opdracht uit te voeren met Jedis, voert u methodeaanroepen uit tegen het Jedis object dat u vanuit de pool hebt gemaakt. Jedis onthult Redis-opdrachten als methode-aanroepen, enkele voorbeelden zijn:

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

Als u de waarde van een String-sleutel in Redis wilt instellen, zou u een codeblok gebruiken dat lijkt op:

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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow