介绍一些 redis 的常用方法~~
package com.test;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;
public class RedisMethodTest {
private Jedis jedis;
@Before
public void setup(){
jedis = new Jedis("10.10.10.26", 6379);
}
@Test
public void testAllKey(){
Set keys = jedis.keys("*");
Iterator it = keys.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
System.out.println("------- 这是分隔线 -------");
long delResult = jedis.del("age");//DEL 移除给定的一个或多个key。如果key不存在,则返回结果为0。
System.out.println(delResult);
System.out.println("------- 这是分隔线 -------");
//EXPIRE key seconds 为给定key设置生存时间。当key过期时,它会被自动删除。
long expireResult = jedis.expire("newUser", 5);//5秒过期
System.out.println(expireResult);
//EXPIREAT EXPIREAT的作用和EXPIRE一样,都用于为key设置生存时间。不同在于EXPIREAT命令接受的时间参数是UNIX时间戳(unix timestamp)。
long ttlResult = jedis.ttl("newUser");//TTL 返回给定key的剩余生存时间,也就是,返回距离这个键被服务器自动删除还有多长时间(time to live)(以秒为单位)
System.out.println(ttlResult);
System.out.println("------- 这是分隔线 -------");
long persistResult = jedis.persist("user");//key 移除给定key的生存时间。
System.out.println(persistResult);
System.out.println("------- 这是分隔线 -------");
System.out.println(jedis.exists("age"));// 检查给定key是否存在。
System.out.println("------- 这是分隔线 -------");
//key db 将当前数据库(默认为0)的key移动到给定的数据库db当中。如果当前数据库(源数据库)和给定数据库(目标数据库)有相同名字的给定key,或者key不存在于当前数据库,那么MOVE没有任何效果。
long moveResult = jedis.move("age", 1);//将foo这个key,移动到数据库1
System.out.println(moveResult);
System.out.println("------- 这是分隔线 -------");
//key newkey 将key改名为newkey。当key和newkey相同或者key不存在时,返回一个错误。当newkey已经存在时,RENAME命令将覆盖旧值。
// String renameResult = jedis.rename("user", "newUser");
// System.out.println(renameResult);
//key 返回key所储存的值的类型。
System.out.println(jedis.type("newUser"));//none(key不存在),string(字符串),list(列表),set(集合),zset(有序集),hash(哈希表)
System.out.println("------- 这是分隔线 -------");
//一般SORT用法 最简单的SORT使用方法是SORT key。
jedis.del("sort");
jedis.lpush("sort", "1");
jedis.lpush("sort", "4");
jedis.lpush("sort", "6");
jedis.lpush("sort", "3");
jedis.lpush("sort", "0");
List list = jedis.sort("sort");//默认是升序
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
System.out.println("------- 这是分隔线 -------");
System.out.println(jedis.dbSize());//dbSize是多少个key的个数
System.out.println("------- 这是分隔线 -------");
// 将key中储存的数字值减一。
jedis.set("setname","3");
System.out.println(jedis.decr("setname"));
//INCR key 将key中储存的数字值增一。
System.out.println(jedis.incr("setname"));
//DECRBY key decrement将key所储存的值减去减量decrement。
System.out.println(jedis.decrBy("setname", 2));
//INCRBY key increment 将key所储存的值加上增量increment。
System.out.println(jedis.incrBy("setname", 5));
System.out.println("------- 这是分隔线 -------");
jedis.flushAll();//清空所有的key
}
}