ITPub博客

首页 > 大数据 > 数据分析 > Redis常用方法

Redis常用方法

数据分析 作者:破棉袄 时间:2014-09-01 17:21:08 0 删除 编辑
  1. package com.redis;  
  2.   
  3. import java.util.HashMap;  
  4. import java.util.Iterator;  
  5. import java.util.List;  
  6. import java.util.Map;  
  7. import java.util.Map.Entry;  
  8. import java.util.Set;  
  9.   
  10. import org.junit.Before;  
  11. import org.junit.Test;  
  12.   
  13. import redis.clients.jedis.Jedis;  
  14.   
  15. public class TestRedis {  
  16.   
  17.     private static final String SERVER_ADDRESS = "127.0.0.1";   //服务器地址  
  18.     private static final Integer SERVER_PORT = 6379 ;   //端口  
  19.       
  20.     private Jedis jedis ;  
  21.       
  22.     @Before  
  23.     public void init(){  
  24.         jedis = new Jedis(SERVER_ADDRESS, SERVER_PORT);   
  25.     }  
  26.       
  27.       
  28.       
  29.     /** 
  30.      * 操作普通键值对 
  31.      */  
  32.     @Test  
  33.     public void test01(){  
  34.         jedis.set("name", "zhoufeng");//存入1个key=name value=zhoufeng的键值对  
  35.         String value = jedis.get("name");   //获取key=name的值  
  36.         System.out.println(value);  
  37.     }  
  38.       
  39.     /** 
  40.      * 操作List 
  41.      */  
  42.     @Test  
  43.     public void test02(){  
  44.           
  45.         //将zhoufeng 加入students数组的结尾,如果该元素是第一个元素,那么会自动创建students数组  
  46.         jedis.rpush("students", "zhoufeng");      
  47.           
  48.         //将zhangsan加入到students的末尾  
  49.         jedis.lpush("students", "zhangsan");  
  50.           
  51.         //移除students的第一个元素  
  52.         jedis.lpop("students");  
  53.           
  54.         //移除students的最后一个元素  
  55.         jedis.rpop("students");  
  56.           
  57.         //移除制定的元素,第二个参数表示要移除的个数,因为list中是允许出现重复元素的  
  58.         jedis.lrem("student", 1, "zhangsan") ;  
  59.         //获取students数组的所有元素  
  60.         List  students = jedis.lrange("students", 0, -1) ;  
  61.           
  62.         System.out.println(students);  
  63.     }  
  64.       
  65.     /** 
  66.      * 操作Set 
  67.      */  
  68.     @Test  
  69.     public void test03(){  
  70.         //添加元素  
  71.         jedis.sadd("teachers", "zhangsan");  
  72.         jedis.sadd("teachers", "lisi");  
  73.         jedis.sadd("teachers", "wangwu");  
  74.           
  75.         //判断Set是否包含制定元素  
  76.         Boolean b1 = jedis.sismember("teachers", "wangwu");  
  77.         Boolean b2 = jedis.sismember("teachers", "xxxxx");  
  78.         System.out.println(b1 + "   " + b2);    
  79.           
  80.         //获取Set内所有的元素  
  81.         Set members =  jedis.smembers("teachers");  
  82.         Iterator it = members.iterator() ;  
  83.         while(it.hasNext()){  
  84.             System.out.println(it.next());  
  85.         }  
  86.           
  87.     //  jedis.sunion(keys...) 可以将多个Set合并成1个并返回合并后的Set  
  88.           
  89.     }  
  90.       
  91.     /** 
  92.      * 操作带排序功能的Set 
  93.      */  
  94.     @Test  
  95.     public void test04(){  
  96.         //添加元素,会根据第二个参数排序  
  97.         jedis.zadd("emps", 5 , "aaa") ;  
  98.         jedis.zadd("emps", 1 , "bbbb") ;  
  99.         jedis.zadd("emps", 3 , "ccc") ;  
  100.         jedis.zadd("emps", 2 , "ddd") ;  
  101.           
  102.         //获取所有元素  
  103.         Set emps = jedis.zrange("emps", 0, -1) ;  
  104.         Iterator it = emps.iterator() ;  
  105.         while(it.hasNext()){  
  106.             System.out.println(it.next());  
  107.         }  
  108.     }  
  109.       
  110.     /** 
  111.      * 存入对象,使用Map作为对象 
  112.      */  
  113.     @Test  
  114.     public void test05(){  
  115.         Map car = new HashMap() ;  
  116.         car.put("COLOR", "red") ;  
  117.         car.put("SIZE", "2T");  
  118.         car.put("NO", "京8888");  
  119.         //存入对象,使用car:01当作key,是为了方便和其他car区分。比如car:02  
  120.         jedis.hmset("car:01", car);  
  121.           
  122.         //获取整个对象  
  123.         Map result = jedis.hgetAll("car:01");   
  124.         Iterator>  it = result.entrySet().iterator();  
  125.         while(it.hasNext()){  
  126.             Entry entry = it.next() ;    
  127.             System.out.println("key:" + entry.getKey() + " value:" + entry.getValue());  
  128.         }  
  129.           
  130.         //也可以获取制定的属性  
  131.         String no = jedis.hget("car:01", "NO") ;  
  132.         System.out.println("NO:" + no);  
  133.     }  
  134.       
  135. }  

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29754888/viewspace-1261575/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-07-16

  • 博文量
    180
  • 访问量
    1158168