您的位置:首页 > 数据库 > Redis

Redis的常用方法总结

2016-01-31 21:54 441 查看
public static RedisDao jedis;

public static void main(String[] args) {

jedis=(RedisDao) context.getBean("redisDao");
//将数据放入redis
jedis.set("testKey","testValue");
//放入缓存,并设置30s后失效
jedis.set("testValid",new Date().toString(), 30);
jedis.rpush("11", "22", "33", "44", "55");

//获取当前库中的总数
int count=jedis.getKeyCount("");
String testkey=jedis.get("bb");
List <String> students = jedis.lrange("11", 0, -1) ;

System.out.println("testkey========="+testkey);
System.out.println("testlist========="+students.toString());
System.out.println("test=========count="+count);
}

/**
* 操作普通键值对
*/
@Test
public void test01(){
//存入1个key=name value=hello的键值对
jedis.set("name", "hello");
String value = jedis.get("name");   //获取key=name的值
System.out.println(value);

jedis.del("name");
value = jedis.get("name");   //获取key=name的值
System.out.println(value);
}

/**
* 操作List
*/
@Test
public void test02(){

//将zhoufeng 加入students数组的开头,如果该元素是第一个元素,那么会自动创建students数组
jedis.rpush("students", "first");

//将zhangsan加入到students的末尾
jedis.lpush("students", "end");

//移除students的第一个元素
jedis.lpop("students");

//移除students的最后一个元素
jedis.rpop("students");

//移除制定的元素,第二个参数表示要移除的个数,因为list中是允许出现重复元素的
jedis.lrem("student", 1, "first") ;
//获取students数组的所有元素
List <String> students = jedis.lrange("students", 0, -1) ;

System.out.println(students);
}

/**
* 操作Set
*/
@Test
public void test03(){
//添加元素
jedis.sadd("teachers", "zhangsan");
jedis.sadd("teachers", "lisi","hello");
jedis.sadd("teachers", "wangwu");

//判断Set是否包含制定元素
Boolean b1 = jedis.sismember("teachers", "wangwu");
Boolean b2 = jedis.sismember("teachers", "xxxxx");
System.out.println(b1 + "   " + b2);

//获取Set内所有的元素
Set<String> members =  jedis.smembers("teachers");
Iterator<String> it = members.iterator() ;
while(it.hasNext()){
System.out.println(it.next());
}

//  jedis.sunion(keys...) 可以将多个Set合并成1个并返回合并后的Set

}

/**
* 操作带排序功能的Set
*/
@Test
public void test04(){
//添加元素,会根据第二个参数排序
jedis.zadd("emps", 5 , "aaa") ;
jedis.zadd("emps", 1 , "bbbb") ;
jedis.zadd("emps", 3 , "ccc") ;
jedis.zadd("emps", 2 , "ddd") ;

//获取所有元素
Set<String> emps = jedis.zrange("emps", 0, -1) ;
Iterator<String> it = emps.iterator() ;
while(it.hasNext()){
System.out.println(it.next());
}
}

/**
* 存入对象,使用Map作为对象
*/
@Test
public void test05(){
Map<String , String > car = new HashMap<String , String >() ;
car.put("COLOR", "red") ;
car.put("SIZE", "2T");
car.put("NO", "8888");

jedis.hmset("car", car);

//获取整个对象
Map<String, String> result = jedis.hgetAll("car");
Iterator<Entry<String, String>>  it = result.entrySet().iterator();
while(it.hasNext()){
Entry<String, String> entry = it.next() ;
System.out.println("key:" + entry.getKey() + " value:" + entry.getValue());
}

//也可以获取制定的属性
String no = jedis.hget("car", "NO") ;
System.out.println("NO:" + no);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: