Redis java客户端操作

jedis

  • jedis官方指定的redis java客户端,将其导入到pom.xml问价内
<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>3.1.0</version>
</dependency>
  • 部分的相关操作如下
  • 源码和注解如下
package com.example.demo;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

import java.util.List;
import java.util.Set;

public class RedisDemo {
    //Ip:192.168.133.130;port:10190
    //定义连接池
    private static JedisPool jedisPool = null;
    //初始化
    private static void init(){
        //Jedis池配置
        JedisPoolConfig config = new JedisPoolConfig();
        //最大空闲连接数
        config.setMaxIdle(8);
        //最大的连接数
        config.setMaxTotal(100);
        //设置获取连接的最大等待时间,如果超过这个时间没有链接,就会抛出异常
        config.setMaxWaitMillis(1000);
        //在创建一个连接时,是否去校验true是校验
        config.setTestOnBorrow(false);
        jedisPool = new JedisPool(config,"192.168.133.130",10190,5000);
    }

    //操作字符串
    public static void testString(){
        //获取jedis实例,从jedisPool里面
        //操作redis客户端的类创建完毕
        Jedis jedis = jedisPool.getResource();
        //设置key
        jedis.set("test_key","123");
        //直接输出到界面上
        System.out.println("test_key:"+jedis.get("test_key"));
        //自增
        jedis.incr("test_key");
        System.out.println("test_key:"+jedis.get("test_key"));
        //自减
        jedis.decr("test_key");
        System.out.println("test_key:"+jedis.get("test_key"));
        //查询类型
        System.out.println("type:"+jedis.type("test_key"));
        //删除key
//        jedis.del("test_key");
        //设置key的超时时间
        jedis.expire("test_key",10);//10秒
        //关闭连接
        jedis.close();
    }

    //List
    public static void testList(){
        //获取连接
        Jedis jedis = jedisPool.getResource();
        //预先删除key
        jedis.del("test_list");
        //在list左边插入元素
        //增加list
        jedis.lpush("test_list","a");
        jedis.lpush("test_list","b");
        jedis.lpush("test_list","c");
        jedis.lpush("test_list","1");
        jedis.lpush("test_list","2");
        jedis.lpush("test_list","3");
        jedis.lpush("test_list","4");
        //查询list
        List<String> list = jedis.lrange("test_list",0,-1);
        list.forEach(i->{
            System.out.println(i);
        });
        //关闭连接
        jedis.close();
    }

    //操作集合
    public static void testSet(){
        //获取连接
        Jedis jedis = jedisPool.getResource();
        String key = "test_set";
        jedis.del(key);
        //添加元素
        jedis.sadd(key,"hello","cc");
        //获取元素
        Set<String>set = jedis.smembers(key);
        System.out.println("all members"+set);
        //集合的长度
        System.out.println("set的长度"+jedis.scard(key));
        //查看元素是否在集合里面
        System.out.println("cc元素是否在集合里面"+jedis.sismember(key,"cc"));
        //随机删除
        System.out.println("随机删除元素:"+jedis.spop(key));
        //集合的相关操作
        String test_set1 = "test_set1";
        String test_set2 = "test_set2";
        jedis.sadd(test_set1,"a","b","c","d");
        jedis.sadd(test_set2,"b","c","e");
        //交集
        Set<String>sets = jedis.sinter(test_set1,test_set2);
        System.out.println("test1和test2的交集:"+sets);
        //差集
        sets = jedis.sdiff(test_set1,test_set2);
        System.out.println("test1和test2的差集:"+sets);
        //并集
        sets = jedis.sunion(test_set1,test_set2);
        System.out.println("test1和test2的并集:"+sets);
        //关闭连接
        jedis.close();
    }
    public static void main(String[] args) {
        //初始化连接
        init();
        //字符串相关的操作
        testString();
        //List相关操作
        testList();
        //set相关操作
        testSet();
    }
}
发布了76 篇原创文章 · 获赞 2 · 访问量 3791

猜你喜欢

转载自blog.csdn.net/CHYabc123456hh/article/details/104872962