java 如何使用redisson客户端获取redis集群中的键值

qnyhuwrf  于 2023-03-21  发布在  Java
关注(0)|答案(2)|浏览(375)

我正在使用Redisson客户端获取Redis集群中的一个键的值。

Config config = new Config();
        config.useClusterServers()      
    .addNodeAddress("redis://localhost:6380","redis://localhost:6379","redis://localhost:6381");

        RedissonClient redisson = Redisson.create(config);

        RMapCache<String, String> map = redisson.getMapCache("db0");

        System.out.println("Key value  is :  "+map.get("key"));

我从这个命令结果中得到了db0作为键空间
INFO密钥空间
db0:keys=1,expires= 0,avg_ttl =0
但结果是
关键值为:零

c9qzyr3d

c9qzyr3d1#

Redis集群一直是单键空间,不能通过db0 name切换或访问。db0:keys=1意味着你的情况下已经有了db0的单键。

mqkwyuun

mqkwyuun2#

我建议使用以下代码连接到Redis(集群或简单服务器),并获取一个现有的key简单值:

package org.example;

import org.redisson.Redisson;
import org.redisson.api.RBucket;
import org.redisson.api.RedissonClient;
import org.redisson.client.codec.StringCodec;
import org.redisson.config.Config;

public class Main {
    public static void main(String[] args) {

        try {
            Config config = new Config();
            config.useSingleServer().setAddress("redis://localhost:6379");
            config.setCodec(new StringCodec());
            RedissonClient redisson = Redisson.create(config);
            RBucket<String> bucket = redisson.getBucket("clientName");
            String objValue = bucket.get();
            System.out.println("The object value is: " + objValue);
            redisson.shutdown();
        } catch (Exception e) {
            System.out.println("e = " + e);
            e.printStackTrace();
        }
    }
}

相关问题