zoukankan      html  css  js  c++  java
  • 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 }
  • 相关阅读:
    JavaScript学习(一)
    CSS学习(1)(网页编程)
    学习MVC3(二)——创建自己的第一个网页:实现用户登陆(1)
    C#多态小结——面向对象编程的三大机制之二
    学习网页编程(一)
    开始的2012
    基于jquery的上传插件Uploadify 3.1.1在MVC3中的使用:上传大文件的IO Error问题
    网页编程注意
    基于jquery的上传插件Uploadify 3.1.1在MVC3中的使用
    BackgroundSize
  • 原文地址:https://www.cnblogs.com/huangyichun/p/7144618.html
Copyright © 2011-2022 走看看