Redis --javaAPI

redis的javaAPI操作

redis不仅可以通过命令行进行操作,同时redis也可以通过javaAPI进行操作,我们可以通过使用javaAPI来对redis数据库当中的各种数据类型进行操作。

第一步:创建maven工程并导入jar包


        
            redis.clients
            jedis
            2.9.0
        
        
            junit
            junit
            4.12
            test
        
        
            org.testng
            testng
            6.14.3
            test
        
    
    
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.0
                
                    1.8
                    1.8
                    UTF-8
                    
                
            
        
    

 

第二步:连接以及关闭redis客户端

    private JedisPool jedisPool;
    private JedisPoolConfig config;

    @BeforeTest
    public  void redisConnectionPool() {
        //设置数据库连接池
        config = new JedisPoolConfig();
        //设置最大保存idel状态对象数
        config.setMaxIdle(10);
        //设置最大的等待时间
        config.setMaxWaitMillis(3000);
        //设置最大空闲的链接数
        config.setMaxTotal(50);
        //设置最小的空闲数量
        config.setMinIdle(5);
        //回去Redis连接池
        jedisPool = new JedisPool(config, "node01", 6379);

    }

    @AfterTest
    public void closePool(){
        //关闭Redis连接池
        jedisPool.close();
    }

 

第三步:redis的javaAPI操作

操作string类型数据

/**
 * 添加string类型数据
 */
@Test
public void addStr(){
    Jedis resource = jedisPool.getResource();
    //添加
    resource.set("jediskey", "jedisvalue");
    //查询
    String jediskey = resource.get("jediskey");
    System.out.println(jediskey);
    //修改
    resource.set("jediskey","jedisvalueUpdate");
    //删除
    resource.del("jediskey");
    //实现整型数据的增长操作
    resource.incr("jincr");
    resource.incrBy("jincr",3);
    String jincr = resource.get("jincr");
    System.out.println(jincr);
    resource.close();
}

操作hash列表类型数据

/**
 * 操作hash类型数据
 */
@Test
public void hashOperate(){
    Jedis resource = jedisPool.getResource();
    //添加数据
    resource.hset("jhsetkey","jmapkey","jmapvalue");
    resource.hset("jhsetkey","jmapkey2","jmapvalue2");
    //获取所有数据
    Map jhsetkey = resource.hgetAll("jhsetkey");
    for (String s : jhsetkey.keySet()) {
        System.out.println(s);
    }
    //修改数据
    resource.hset("jhsetkey","jmapkey2","jmapvalueupdate2");
    Map jhsetkey2 = resource.hgetAll("jhsetkey");
    for (String s : jhsetkey2.keySet()) {
        System.out.println("修改数据打印"+s);
    }
    //删除数据
    resource.del("jhsetkey");

    Set jhsetkey1 = resource.keys("jhsetkey");
    for (String result : jhsetkey1) {
        System.out.println(result);
    }
}

操作list类型数据

/**
 * 操作list类型的数据
 */
@Test
public void listOperate(){
    Jedis resource = jedisPool.getResource();
    //从左边插入元素
    resource.lpush("listkey","listvalue1","listvalue1","listvalue2");

    //从右边移除元素
    resource.rpop("listkey");
    //获取所有值
    List listkey = resource.lrange("listkey", 0, -1);
    for (String s : listkey) {
        System.out.println(s);
    }
    resource.close();
}

操作set类型的数据

/**
 * set类型数据操作
 */
@Test
public void setOperate(){
    Jedis resource = jedisPool.getResource();
    //添加数据
    resource.sadd("setkey", "setvalue1", "setvalue1", "setvalue2", "setvalue3");
    //查询数据
    Set setkey = resource.smembers("setkey");
    for (String s : setkey) {
        System.out.println(s);
    }
    //移除掉一个数据
    resource.srem("setkey","setvalue3");
    resource.close();
}

 

你可能感兴趣的:(Redis)