java对redis操作API

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());
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值