您当前的位置: 首页 >  Java

$驽马十驾$

暂无认证

  • 0浏览

    0关注

    31博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

java操作Redis之Jedis

$驽马十驾$ 发布时间:2022-06-10 14:37:21 ,浏览量:0

对于redis的操作命令,java都有对应的API操作(Jedis,就类似于操作MySQL的Jdbc),下面我们就玩耍一下吧,再熟悉一遍Redis的操作命令。

依赖jar包

第一步,导入依赖jar包,这是必须的嘛,常规操作


    redis.clients
    jedis
    2.9.0

Jedis对象

在测试类中我们先创建一个Jedis对象,并测试连接Redis是否正常。

package com.wpp.redis_publish_subscribe;

import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import redis.clients.jedis.Jedis;

@SpringBootTest
class RedisPublishSubscribApplicationTests {

    Jedis jedis = new Jedis("Redis地址",6379);

    @Test
    void test1() {
        jedis.auth("Redis密码");

        String ping = jedis.ping();
        System.out.println(ping);
        jedis.close();
    }

}

测试结果如下: 在这里插入图片描述

操作 key
	@Test
    void test2() {
        jedis.auth("Redis密码");

        jedis.set("k1","v1");
        jedis.set("k2","v2");
        jedis.set("k3","v3");
        //对应 keys * 命令
        Set keys = jedis.keys("*");
        for (String key : keys) {
            System.out.println(key);
        }
        //对应 exists key 命令
        System.out.println(jedis.exists("k1"));
        //对应 ttl key 命令
        System.out.println(jedis.ttl("k1"));
        
		jedis.close();
    }

测试结果如下: 在这里插入图片描述

操作 String
	@Test
    void test3(){
        jedis.auth("Redis密码");

        //对应 mset 命令(同时设置一个或多个 key-value 对)
        jedis.mset("str1", "v1", "str2", "v2", "str3", "v3");
        System.out.println(jedis.mget("str1","str2","str3"));
        
		jedis.close();
    }

测试结果如下: 在这里插入图片描述

操作 List
	@Test
    void test4(){
        jedis.auth("Redis密码");

        //对应 lpush 命令(从左边插入一个或多个值)
        jedis.lpush("myList","element3","element2","element1");
        //对应 lrang 命令(从左到右,按照索引下标获得元素)
        List list = jedis.lrange("myList", 0, -1);
        for (String element : list) {
            System.out.println(element);
        }
        
		jedis.close();
    }

测试结果如下: 在这里插入图片描述

操作 Set
	@Test
    void test5(){
        jedis.auth("Redis密码");

        //对应 sadd 命令(将一个或多个member元素加入到集合key中)
        jedis.sadd("mySet","member1","member2","member3");
        //对应 smembers 命令(取出该集合的所有值)
        Set mySet = jedis.smembers("mySet");
        for (String member : mySet) {
            System.out.println(member);
        }
		
		jedis.close();
    }

测试结果如下: 在这里插入图片描述

操作 Hash
	@Test
    void test6(){
        jedis.auth("Redis密码");

        //对应 hset 命令(给 key 集合中的 field 键赋值 value)
        jedis.hset("student1","userName","wangDa");
        jedis.hset("student1","age","18");
        jedis.hset("student1","mobile","15611112222");
        //对应 hget 命令(从 key 集合中的 field 取出 value)
        System.out.println(jedis.hget("student1","userName"));

        HashMap map = new HashMap();
        map.put("userName","wangEr");
        map.put("age","16");
        map.put("mobile","18733334444");
        //对应 hmset 命令(批量设置 hash 的值)
        jedis.hmset("student2",map);
        List result = jedis.hmget("student2", "userName", "age", "mobile");
        for (String element : result) {
            System.out.println(element);
        }
		
		jedis.close();
    }

测试结果如下: 在这里插入图片描述

操作 Zset
@Test
    void test7(){
        jedis.auth("Redis密码");

        //对应 zadd 命令(将一个或多个 member 元素及其 score 值加入到有序集合 key 当中)
        jedis.zadd("myZset",100d,"member1");
        jedis.zadd("myZset",200d,"member2");
        jedis.zadd("myZset",300d,"member3");
        //对应 zrang 命令(返回有序集合 key 中,下标在 start stop 之间的元素)
        Set myZset = jedis.zrange("myZset", 0, -1);
        for (String member : myZset) {
            System.out.println(member);
        }
		
		jedis.close();
    }

测试结果如下: 在这里插入图片描述

更多的 API 操作和 Redis 的基本操作命令基本一致,有兴趣了可以都测试一下,加深一下印象哦!

关注
打赏
1663377658
查看更多评论
立即登录/注册

微信扫码登录

0.0442s