枫--- 2018-01-24 02:07 采纳率: 50%
浏览 4481
已采纳

怎么将数据存储在一台redis服务分布在不同的redis数据库中

我在Windows上搭建了一个redis服务器,我想将数据缓存在这台redis上,但是所有的
数据都会默认缓存在index为0的这个数据库当中,怎么样才能将数据存储在不同下标上
的redis数据库?

  • 写回答

3条回答 默认 最新

  • linmomo02 2018-01-24 02:12
    关注

    redis 本身支持16个数据库,通过 数据库id 设置,默认为0
    设置redis的dbIndex方法有2种:
    1.通过构造函数设置;
    2.通过set方法设置;

    先说第一种:
    在使用redis时,java中使用的是java版本的redis,即:jedis;具体写法如下:
    JedisPool pool = new JedisPool(jredisConfig, server, Integer.valueOf(port));
    Jedis redis = pool.getResource();
    String value = redis.get("key");
    //取值

    构造函数有多个重载函数其中有下面一个:
    public JedisPool(org.apache.commons.pool.impl.GenericObjectPool.Config poolConfig, String host, int port, int timeout, String password, int database);
    poolConfig: jedis配置信息,如:maxActive,maxIdle,minIdle,maxWait
    host: ip
    port: 端口
    timeout:超时时间,默认为2000
    password:密码,可为null
    database:第几个数据库,默认:0
    更换以上这个构造函数,就可以设置database了

    第二种:通过set方法设置
    JedisPool pool = new JedisPool(jredisConfig, server, Integer.valueOf(port));
    Jedis redis = pool.getResource();
    redis.select(index);
    //需要调用一个方法,设置使用第几个database
    String value = redis.get("key");
    //取值

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 魔霸ROG7 pro,win11.息屏后会显示黑屏,如图,如何解决?(关键词-重新启动)
  • ¥15 有没有人知道这是哪里出了问题啊?要怎么改呀?
  • ¥200 C++表格文件处理-悬赏
  • ¥15 Windows Server2016本地登录失败
  • ¥15 复合卡卡号轨道写入芯片卡
  • ¥20 基于MATLAB的TDOA
  • ¥15 为啥输入字体突然变了
  • ¥20 已知坐标,换成MATLAB可以用的数据
  • ¥15 这个python五子棋代码的每一句意思是什么啊
  • ¥15 求一段隐藏代码,隐藏一些内容