Redis——Jedis操作数据类型

1、jedis连接redis:

①启动linux中redis服务,一定要记得关闭linux防火墙,否则无法连接;

//找到redis目录下到redis.conf
redis-server /opt/redis-6.2.1/redis.conf

//关闭防火墙(centos7)
systemctl stop firewalld

②导入jedis依赖;

    
       redis.clients
       jedis
       3.1.0
   

③创建jedis对象,new Jedis("linux的ip地址","redis端口"),默认端口号为6379;

④调用ping()方法,若输出为PONG,则连接成功。

     @Test
    public void testConnect(){
        Jedis jedis = new Jedis("192.168.22.123",6379);
        String ping = jedis.ping();
        System.out.println(ping);
    }

Redis——Jedis操作数据类型_第1张图片

 

2、jedis操作string类型

 ①连接redis-server服务;

 ②调用mset("键","值",...)方法存储string类型,一次可以存储一个或多个键值对;

 ③调用mget("键",...)方法取出string类型,可以同时取出多个值。

 @Test
    public void testString(){
        Jedis jedis = new Jedis("192.168.22.123",6379);
        //存储数据
        jedis.mset("name1","lisi","name2","zhansan","name3","wangwu");
        //取数据
        List mget = jedis.mget("name1", "name2", "name3");
        for (String s : mget) {
            System.out.println(s);
        }
    }

Redis——Jedis操作数据类型_第2张图片

 

3、jedis操作list类型

 ①连接redis-server服务;

 ②调用lpush("键","值" ,"值",.....)方法存储数据;

 ③调用lpop()方法弹出左边头元素;

 ④调用lrange("键",开始下标,结束下标)方法遍历list集合,后进先出。

    @Test
    public void testList(){
        Jedis jedis = new Jedis("192.168.23.129",6379);
        //存储数据
        jedis.lpush("id","001","002","003");
        //弹出作左边头元素
        jedis.lpop("id");
        //取出数据
        List id = jedis.lrange("id", 0, -1);
        for (String s : id) {
            System.out.println(s);
        }
    }

Redis——Jedis操作数据类型_第3张图片

 

4、jedis操作set类型

 ①连接redis-server服务;

 ②调用sadd("键","值",.....)方法添加数据,可以添加一个或多个值;

 ③调用smembers(""键)方法获取数据。

    @Test
    public void testSet(){
        Jedis jedis = new Jedis("192.168.23.129",6379);
        //添加数据
        jedis.sadd("name","lisi");
        jedis.sadd("name","zhangsan");
        jedis.sadd("name","wangwu");
        //取出数据
        Set name = jedis.smembers("name");
        for (String s : name) {
            System.out.println(s);
        }
    }

 

5、jedis操作hash类型

 ①连接redis-server服务;

 ②调用hset("键","属性标识","属性数据")方法存储数据,一次只能存储一个属性标识以及对应属性数据;

 ③调用hget("键","属性标识")方法取出属性数据,一次只能取出一个属性数据;

 ④创建map集合存储属性标识与属性数据,map集合键与值必须为string类型;

 ⑤调用hmset("键","属性集合")方法存储数据,可以批量添加属性标识以及对应属性数据;

 ⑥调用hmget("键","属性标识","属性标识", .....)方法取出一个或多个属性数据。

    @Test
    public void testHash(){
        Jedis jedis = new Jedis("192.168.23.129",6379);
        //存储一个属性数据
        jedis.hset("stu","name","lisi");
        //取出数据
        System.out.println("stu:"+jedis.hget("stu", "name"));

        Map map=new HashMap<>();
        map.put("name","zhansan");
        map.put("age","18");
        map.put("phone","16365754666");
        //存储多个属性
        jedis.hmset("stu1",map);
        //取出数据
        List hmget = jedis.hmget("stu1", "name", "phone");
        for (String s : hmget) {
            System.out.println("stu1:"+s);
        }
    }

Redis——Jedis操作数据类型_第4张图片

 

6、jedis操作zset类型

 ①连接redis-server服务;

 ②调用zadd("键","评分","值")方法存储数据,zset按照评分由低到高排序,为有序集合;

 ③调用zrange("键","开始下标","结束下标")方法遍历集合,结束下标为-1表示遍历所有元素。

    @Test
    public void testZset(){
        Jedis jedis = new Jedis("192.168.23.129",6379);
        //存储数据
        jedis.zadd("name",100,"lisi");
        jedis.zadd("name",50,"zhansan");
        jedis.zadd("name",500,"wangwu");
        //取出数据
        Set name = jedis.zrange("name", 0, -1);
        for (String s : name) {
            System.out.println(s);
        }
    }

 Redis——Jedis操作数据类型_第5张图片

 

 

你可能感兴趣的:(redis,java)