public class redisTest { Jedis jedis = new Jedis("127.0.0.1", 6379); public void rSting() { // 赋值 jedis.set("name", "value"); jedis.set("username", "value"); jedis.set("password", "value"); // 删除 jedis.del("name"); System.out.println(jedis.get("name")); System.out.println(jedis.get("username")); // 自减 jedis.decr("password"); System.out.println(jedis.get("password")); // 增减指定量 jedis.incrBy("password", 3); System.out.println(jedis.get("password")); // 连接 jedis.append("username", "value"); System.out.println(jedis.get("username")); } public void rHash() { // 单个赋值 jedis.hset("test", "username", "value"); System.out.println(jedis.hget("test", "username")); // 多个赋值 Map<String, String> map = new HashMap<>(); map.put("username", "value"); map.put("password", "123"); jedis.hmset("用户表2", map); System.out.println(jedis.hmget("用户表2", "username", "password")); // 增加数字 jedis.hset("用户表1", "age", "23"); jedis.hincrBy("用户表1", "age", 2); System.out.println(jedis.hget("用户表1", "age")); // 判断字段是否存在 boolean fiag1 = jedis.hexists("用户表1", "username"); boolean fiag2 = jedis.hexists("用户表1", "password"); System.out.println(fiag1 + "\t" + fiag2); // 获取长度 System.out.println(jedis.hlen("用户表1")); // 获取所有属性名称 Set<String> sets = jedis.hkeys("用户表2"); for (String str : sets) { System.out.println(str); } // 获取所有属性的值 List<String> list = jedis.hvals("用户表1"); for (String str : list) { System.out.println(str); } } public void rList() { // 从左边开始添加 jedis.lpush("list1", "1", "2", "3"); jedis.lpush("list1", "a", "b", "c"); // 从第1个开始(坐标为0)到倒数第一个(坐标为-1) 也就是最后一个 也就是 所有数据 System.out.println("list1:" + jedis.lrange("list1", 0, -1)); // 从右边开始开始添加,一般人都习惯这种思维 jedis.rpush("list2", "1", "2", "3"); jedis.rpush("list2", "a", "b", "c"); System.out.println("list2:" + jedis.lrange("list2", 0, -1)); // 从左侧弹出集合元素,并删除该元素 System.out.println(jedis.lpop("list1")); // 从右侧弹出集合元素,并删除该元素 System.out.println(jedis.rpop("list2")); // 删除 jedis.del("list1"); jedis.del("list2"); } public void rSet() { // 添加和获取 jedis.sadd("set1", "a", "b", "c"); jedis.sadd("set1", "a", "d", "e"); System.out.println("不会出现重复元素:" + jedis.smembers("set1")); // 删除元素 jedis.srem("set1", "d", "e"); System.out.println("删除掉两个元素后:" + jedis.smembers("set1")); // 判断某个元素是否存在 boolean flag = jedis.sismember("set1", "a"); System.out.println(flag); /* * 计算差、交、并集 */ jedis.sadd("set2", "a", "b", "c"); jedis.sadd("set3", "b", "c", "d"); System.out.println("set2:" + jedis.smembers("set2")); System.out.println("set3:" + jedis.smembers("set3")); // 差集: je.sdiff("set2","set3") 结果返回set2有但是set3没有的元素 Set<String> set1 = jedis.sdiff("set2", "set3"); System.out.println("差集:"); for (String set : set1) { System.out.print(set + "\t"); } // 交集 Set<String> set2 = jedis.sinter("set2", "set3"); System.out.println("\n交集:"); for (String set : set2) { System.out.print(set + "\t"); } // 并集 Set<String> sets3 = jedis.sunion("set2", "set3"); System.out.println("\n并集"); for (String set : sets3) { System.out.print(set + "\t"); } // 计算元素总数 System.out.println("\nset1的元素总数:" + jedis.scard("set1")); // 随机获取一个元素 String rand = jedis.srandmember("set1"); System.out.println("随机获取一个元素:" + rand); } public void rSSet() { // 添加集合期末成绩 元素是平时分,考试,作业 评分分别是80,10,10 jedis.zadd("期末成绩", 80, "平时分"); jedis.zadd("期末成绩", 60, "考试"); jedis.zadd("期末成绩", 10, "作业"); // 获得元素 Set<Tuple> sets = jedis.zrangeWithScores("期末成绩", 0, -1); for (Tuple t : sets) { System.out.println(t.getElement() + "\t" + t.getScore()); } System.out.println("删除得分在60~90分的元素"); // 删除元素 jedis.zremrangeByScore("期末成绩", 60, 90); Set<Tuple> sets2 = jedis.zrangeWithScores("期末成绩", 0, -1); for (Tuple t : sets2) { System.out.println(t.getElement() + "\t" + t.getScore()); } } }
java对redis操作API
最新推荐文章于 2023-05-16 20:37:36 发布