Java开发中对Redis的基本操作总结

1.基本操作

切换到redis目录下运行 redis-cli.exe -h 127.0.0.1 -p 6379 。(windows切换目录与linux不同;如 C:\redis)

-h 后面接你的目录

-p后面是端口

-a后面跟redis验证密码(可选)

 

设置键值对 set myKey abc

取出键值对 get myKey

2. Java  连接到 redis 服务:

import redis.clients.jedis.Jedis;

public class RedisJava {
   public static void main(String[] args) {
       //连接本地的 Redis 服务
       Jedis jedis = new Jedis("localhost");
       System.out.println("连接成功");
       //查看服务是否运行
       System.out.println("服务正在运行: "+jedis.ping());
   }
}

 

编译以上 Java 程序,确保驱动包的路径是正确的。

连接成功
服务正在运行: PONG

 

二、Redis 命令

1. Redis 键(key)

private void KeyOperate() 
   { 
       System.out.println("======================key=========================="); 
       // 清空数据 
       System.out.println("清空库中所有数据:"+jedis.flushDB());
       // 判断key否存在 
       System.out.println("判断key999键是否存在:"+shardedJedis.exists("key999")); 
       System.out.println("新增key001,value001键值对:"+shardedJedis.set("key001", "value001")); 
       System.out.println("判断key001是否存在:"+shardedJedis.exists("key001"));
       // 输出系统中所有的key
       System.out.println("新增key002,value002键值对:"+shardedJedis.set("key002", "value002"));
       System.out.println("系统中所有键如下:");
       Set<String> keys = jedis.keys("*"); 
       Iterator<String> it=keys.iterator() ;   
       while(it.hasNext()){   
           String key = it.next();   
           System.out.println(key);   
       }
       // 删除某个key,若key不存在,则忽略该命令。
       System.out.println("系统中删除key002: "+jedis.del("key002"));
       System.out.println("判断key002是否存在:"+shardedJedis.exists("key002"));
       // 设置 key001的过期时间
       System.out.println("设置 key001的过期时间为5秒:"+jedis.expire("key001", 5));
       try{ 
           Thread.sleep(2000); 
       } 
       catch (InterruptedException e){ 
       } 
       // 查看某个key的剩余生存时间,单位【秒】.永久生存或者不存在的都返回-1
       System.out.println("查看key001的剩余生存时间:"+jedis.ttl("key001"));
       // 移除某个key的生存时间
       System.out.println("移除key001的生存时间:"+jedis.persist("key001"));
       System.out.println("查看key001的剩余生存时间:"+jedis.ttl("key001"));
       // 查看key所储存的值的类型
       System.out.println("查看key所储存的值的类型:"+jedis.type("key001"));
       /*
        * 一些其他方法:1、修改键名:jedis.rename("key6", "key0");
        *             2、将当前db的key移动到给定的db当中:jedis.move("foo", 1)
        */
   }

运行结果:

======================key==========================
清空库中所有数据:OK
判断key999键是否存在:false
新增key001,value001键值对:OK
判断key001是否存在:true
新增key002,value002键值对:OK
系统中所有键如下:
key002
key001
系统中删除key002: 1
判断key002是否存在:false
设置 key001的过期时间为5秒:1
查看key001的剩余生存时间:3
移除key001的生存时间:1
查看key001的剩余生存时间:-1
查看key所储存的值的类型:string

2. Redis 字符串(String)

private void StringOperate() 
   {  
       System.out.println("======================String_1=========================="); 
       // 清空数据 
       System.out.println("清空库中所有数据:"+jedis.flushDB());
       
       System.out.println("=============增=============");
       jedis.set("key001","value001");
       jedis.set("key002","value002");
       jedis.set("key003","value003");
       System.out.println("已新增的3个键值对如下:");
       System.out.println(jedis.get("key001"));
       System.out.println(jedis.get("key002"));
       System.out.println(jedis.get("key003"));
       
       System.out.println("=============删=============");  
       System.out.println("删除key003键值对:"+jedis.del("key003"));  
       System.out.println("获取key003键对应的值:"+jedis.get("key003"));
       
       System.out.println("=============改=============");
       //1、直接覆盖原来的数据
       System.out.println("直接覆盖key001原来的数据:"+jedis.set("key001","value001-update"));
       System.out.println("获取key001对应的新值:"+jedis.get("key001"));
       //2、直接覆盖原来的数据  
       System.out.println("在key002原来值后面追加:"+jedis.append("key002","+appendString"));
       System.out.println("获取key002对应的新值"+jedis.get("key002")); 
  
       System.out.println("=============增,删,查(多个)=============");
       /** 
        * mset,mget同时新增,修改,查询多个键值对 
        * 等价于:
        * jedis.set("name","ssss"); 
        * jedis.set("jarorwar","xxxx"); 
        */  
       System.out.println("一次性新增key201,key202,key203,key204及其对应值:"+jedis.mset("key201","value201",
                       "key202","value202","key203","value203","key204","value204"));  
       System.out.println("一次性获取key201,key202,key203,key204各自对应的值:"+
                       jedis.mget("key201","key202","key203","key204"));
       System.out.println("一次性删除key201,key202:"+jedis.del(new String[]{"key201", "key202"}));
       System.out.println("一次性获取key201,key202,key203,key204各自对应的值:"+
               jedis.mget("key201","key202","key203","key204")); 
       System.out.println();
               
           
       //jedis具备的功能shardedJedis中也可直接使用,下面测试一些前面没用过的方法
       System.out.println("======================String_2=========================="); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值