枫--- 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 串口通信传输字符的质量控制
  • ¥50 xslt如何让block撑满页面
  • ¥15 vs的显示无法启动IIS Express Web服务器,怎么解决?
  • ¥20 一个python博客项目的相关图例
  • ¥15 轮廓提取也提取不到,有没有别的方法,如何解决?
  • ¥50 Js和c++如何将含有图片的excel文件上传到后台服务器
  • ¥15 光电神经网络,FPGA
  • ¥20 通过防火墙出入站阻止游戏程序联网失效
  • ¥15 鼠标是可以在QT界面上移动的,但是热拔插鼠标无法移动了同时板子上是没问题的,如何解决?
  • ¥15 iframe嵌套显示问题