java使用Redis(六个类型)

下载插件:https://mvnrepository.com/artifact/redis.clients/jedis/3.0.0

maven 项目依赖:

     <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>3.0.0</version>
        </dependency>

使用前,必须启动服务

首先连接

      //连接本地的 Redis 服务
        Jedis jedis = new Jedis("localhost");
        System.out.println("连接成功");
        //查看服务是否运行
        System.out.println("服务正在运行:"+jedis.ping()); 

字符串使用:

public static void string(Jedis jedis){
        //使用 string
        System.out.println("-------------- 字符串 -------set-------");
        jedis.set("name","my");//向 key-->name 中放入了 value-->wbg
        // 获取存储的数据并输出
        System.out.println("redis 存储的 name 字符串为:"+ jedis.get("name"));
        jedis.append("name", "name is wbg"); //拼接
          System.out.println(jedis.get("name"));
       jedis.del("name");  //删除某个键
       System.out.println(jedis.get("name"));
       //设置多个键值对
       jedis.mset("name","wbg","age","20","qq","761273133");
       jedis.incr("age"); //进行加 1 操作
       System.out.println(jedis.get("name") + "-" + jedis.get("age") + "-" + jedis.get("qq"));}

 map 的使用:

public static void map(Jedis jedis) {
        //----- 添加数据 ----------
        Map<String, String> map = new HashMap<String, String>();
        map.put("name", "wbg");
        map.put("age", "21");
        map.put("qq", "761273133");
        jedis.hmset("user",map);
        //取出 user 中的 name,执行结果:[minxr]--> 注意结果是一个泛型的 List
        //第一个参数是存入 redis 中 map 对象的 key,后面跟的是放入 map 中的对象的 key,后面的 key 可以跟多个,是可变参数
        List<String> rsmap = jedis.hmget("user", "name", "age", "qq");
        System.out.println(rsmap);
    </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">删除map中的某个键值</span>
    jedis.hdel("user","age"<span style="color: rgba(0, 0, 0, 1)">);
    System.out.println(jedis.hmget(</span>"user", "age")); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">因为删除了,所以返回的是null</span>
    System.out.println(jedis.hlen("user")); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">返回key为user的键中存放的值的个数2</span>
    System.out.println(jedis.exists("user"));<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">是否存在key为user的记录 返回true</span>
    System.out.println(jedis.hkeys("user"));<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">返回map对象中的所有key</span>
    System.out.println(jedis.hvals("user"));<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">返回map对象中的所有value</span>
Iterator<String> iter=jedis.hkeys("user").iterator(); while (iter.hasNext()){ String key = iter.next(); System.out.println(key+":"+jedis.hmget("user",key));} }

set 的使用:

public static void set(Jedis jedis){
        //添加
        jedis.sadd("users","wbg");
        jedis.sadd("users","tp");
        jedis.sadd("users","oyl");
        jedis.sadd("users","ldl");
        jedis.sadd("users","tyj");
        //移除 users 中的 tp
        jedis.srem("users","tp");
        System.out.println(jedis.smembers("users"));//获取所有加入的 value
        System.out.println(jedis.sismember("users", "who"));//判断 who 是否是 users 集合的元素
        System.out.println(jedis.srandmember("users"));
        System.out.println(jedis.scard("users"));//返回集合的元素个数
    }

list 的使用:

 public static void list(Jedis jedis){
        //开始前,先移除所有的内容
        jedis.del("java framework");
        System.out.println(jedis.lrange("java framework",0,-1));
        //先向 key java framework 中存放三条数据
        jedis.lpush("java framework","spring");
        jedis.lpush("java framework","struts");
        jedis.lpush("java framework","hibernate");
        //再取出所有数据 jedis.lrange 是按范围取出,
        // 第一个是 key,第二个是起始位置,第三个是结束位置,jedis.llen 获取长度 -1 表示取得所有
        System.out.println(jedis.lrange("java framework",0,-1));
        //删除
        jedis.del("java framework");
        jedis.rpush("java framework","spring");
        jedis.rpush("java framework","struts");
        jedis.rpush("java framework","hibernate");
        System.out.println(jedis.lrange("java framework",0,-1));}