Redis笔记

  1 import org.junit.Before;
  2 import org.junit.Test;
  3 import redis.clients.jedis.Jedis;
  4 
  5 import java.util.HashMap;
  6 import java.util.Iterator;
  7 import java.util.List;
  8 import java.util.Map;
  9 
 10 /**
 11  * jedis测试
 12  */
 13 public class TestRedis {
 14 
 15     private Jedis jedis;
 16 
 17     @Before
 18     public void setup() {
 19         //连接redis服务器 localhost:6397
 20         jedis = new Jedis("localhost", 6379);
 21         jedis.auth("huang");
 22     }
 23 
 24     /**
 25      * redis存储字符串
 26      */
 27     @Test
 28     public void testString() {
 29         jedis.set("name", "huang");//向key->name放入value->huang
 30         System.out.println(jedis.get("name"));//执行结果huang
 31 
 32         jedis.append("name", "yichun");//拼接
 33         System.out.println(jedis.get("name"));
 34 
 35         jedis.del("name");//删除某个键
 36         System.out.println(jedis.get("name"));
 37         //设置多个键值对
 38         jedis.mset("name", "huang", "age", "25", "qq", "567854412");
 39         jedis.incr("age");//进行加1
 40         System.out.println(jedis.get("name") + "-" + jedis.get("age") + "-" + jedis.get("qq"));
 41     }
 42 
 43     /**
 44      * redis操作Map
 45      */
 46     @Test
 47     public void testMap() {
 48         //添加数据
 49         Map<String, String> map = new HashMap<>();
 50         map.put("name", "huang");
 51         map.put("age", "23");
 52         map.put("qq", "122434");
 53         jedis.hmset("user", map);
 54         //取出user中的name,执行结果: 结果是一个泛型List
 55         //第一个参数是存入redis中map对象的key,后面跟的是放入map中对象的key,后面的key的可变的
 56         List<String> rsMap = jedis.hmget("user", "name", "age", "qq");
 57         System.out.println(rsMap);
 58 
 59         //删除map中的某个键值, map 存在 key fields , value
 60         //其中fields是代表map中的key
 61         jedis.hdel("user", "age");
 62         System.out.println(jedis.hmget("user", "age"));//因为删除,所以返回Null
 63         System.out.println(jedis.hlen("user"));//返回key为user的键中存放的值的个数2
 64         System.out.println(jedis.exists("user"));//是否存在key为user的记录,返回true
 65         System.out.println(jedis.hkeys("user"));//返回map对象中所有的key
 66         System.out.println(jedis.hvals("user"));//返回map对象中的所有value
 67 
 68         Iterator<String> iterator = jedis.hkeys("user").iterator();
 69         while (iterator.hasNext()) {
 70             String key = iterator.next();
 71             System.out.println(key + ":" + jedis.hmget("user", key));
 72         }
 73     }
 74 
 75     /**
 76      * jedis操作List
 77      */
 78     @Test
 79     public void testList() {
 80         //开始前,先移除所有内容
 81         jedis.del("java framework");
 82         System.out.println(jedis.lrange("java framework", 0, -1));
 83         //先向key java framework中存放三条数据 从头部插入
 84         jedis.lpush("java framework", "spring");
 85         jedis.lpush("java framework", "struts");
 86         jedis.lpush("java framework", "hibernate");
 87         //取出所有数据jedis.lrange是按范围取出
 88         //第一个key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度-1表示取得素有的
 89         List<String> list = jedis.lrange("java framework", 0, -1);
 90         System.out.println(list);
 91 
 92         //从尾部插入
 93         jedis.del("java framework");
 94         jedis.rpush("java framework", "spring");
 95         jedis.rpush("java framework", "struts");
 96         jedis.rpush("java framework", "hibernate");
 97         List<String> list1 = jedis.lrange("java framework", 0, -1);
 98         System.out.println(list1);
 99     }
100 
101     @Test
102     public void testSet() {
103         //添加
104         jedis.sadd("user","大雄");
105         jedis.sadd("user","静香");
106         jedis.sadd("user","小夫");
107         jedis.sadd("user","胖虎");
108         jedis.sadd("user","多啦A梦");
109 
110         //移除noname
111         jedis.srem("user","小夫");
112         System.out.println(jedis.smembers("user"));//获取所有加入的value
113         System.out.println(jedis.sismember("user", "小夫"));//判断key为user下,小夫是否存在
114         System.out.println(jedis.srandmember("user",4));//user下个数
115         System.out.println(jedis.scard("user"));//返回集合的元素个数
116     }
117 
118 
119     @Test
120     public void testListSort(){
121         //jedis排序
122         //注意:此处rpush和lpush是List的操作。是一个双向链表
123         jedis.rpush("key", "4");
124         jedis.lpush("key", "3");
125         jedis.lpush("key", "6");
126         jedis.lpush("key", "2");
127         System.out.println(jedis.lrange("key", 0, -1));
128         System.out.println(jedis.sort("key"));
129         System.out.println(jedis.lrange("key", 0, -1));
130     }
131 
132 }
原文地址:https://www.cnblogs.com/huangyichun/p/7144618.html