zoukankan      html  css  js  c++  java
  • redis的基本使用方法

    1.Redis一共支持五大数据类型:

    分别是:字符串(String)、哈希/散列/字典(Hash)、列表(List)、集合(Set)、有序集合(sorted set)。

    2.java 中使用  可以注入

    @Autowired RedisTemplate<String, String> redisTemplate;

    redisTemplate.opsForValue();//操作字符串
    redisTemplate.opsForHash();//操作hash
    redisTemplate.opsForList();//操作list
    redisTemplate.opsForSet();//操作set
    redisTemplate.opsForZSet();//操作有序set

    这里引用一下专家的内容
    String:
    1.redisTemplate.opsForValue().set(key,value)); 
    2.redisTemplate.opsForValue().get(key));
    3.redisTemplate.opsForValue().get(key, start, end);
    4.redisTemplate.opsForValue().getAndSet(key, value);
    5.redisTemplate.opsForValue().getBit(key, offset);//下方注释
    6.redisTemplate.opsForValue().multiGet(keys);
    7.redisTemplate.opsForValue().setBit(key, offset, value);//下方注释
    8.redisTemplate.opsForValue().set(K key, V value, long timeout, TimeUnit unit);//TimeUnit是timeout的类型,如毫秒秒天等
    9.redisTemplate.opsForValue().setIfAbsent(key, value);
    10.redisTemplate.opsForValue().set(K key, V value, long offset);//博主此处未做java验证
    11.redisTemplate.opsForValue().size(key));
    12.redisTemplate.opsForValue().multiGet(Collection<K> keys);
    13.redisTemplate.opsForValue().multiSetIfAbsent(Map<? extends K, ? extends V> m);
    14.同8
    1516171819.redisTemplate.opsForValue().increment(K key, long delta);或.increment(K key, double delta);
    20.redisTemplate.opsForValue().append(key, value);//在key键对应值的右面追加值value
    21.del key------21.redisTemplate.opsForValue().getOperations().delete(key);
    Hash:
    1.redisTemplate.opsForHash().delete(H key, Object... hashKeys);//...表示可以传入多个map的key,用,隔开。或用数组传值
    2.redisTemplate.opsForHash().hasKey(key, hashKey);
    3.redisTemplate.opsForHash().get(key, hashKey);
    4.redisTemplate.opsForHash().entries(key);//返回map集合
    5、6.redisTemplate.opsForHash().increment(H key, HK hashKey, long delta);//或increment(H key, HK hashKey, double delta);;
    7.redisTemplate.opsForHash().keys(key);//返回map的key集合Set
    8.redisTemplate.opsForHash().size(key);
    9.redisTemplate.opsForHash().multiGet(H key, Collection<HK> hashKeys);
    10.redisTemplate.opsForHash().putAll(H key, Map<? extends HK, ? extends HV> m);
    11.redisTemplate.opsForHash().put(key, hashKey, value);
    12.redisTemplate.opsForHash().putIfAbsent(key, hashKey, value);
    13.redisTemplate.opsForHash().values(key);//返回map中的value集合List;
    List:

    redisTemplate.opsForList().leftPush(key, value);//从左向右存压栈
    redisTemplate.opsForList().leftPop(key);//从左出栈
    redisTemplate.opsForList().size(key);//队/栈长
    redisTemplate.opsForList().range(key, start, end);//范围检索,返回List
    redisTemplate.opsForList().remove(key, i, value);//移除key中值为value的i个,返回删除的个数;如果没有这个元素则返回0
    redisTemplate.opsForList().index(key, index);//检索
    redisTemplate.opsForList().set(key, index, value);//赋值
    redisTemplate.opsForList().trim(key, start, end);//裁剪,void,删除除了[start,end]以外的所有元素 
    redisTemplate.opsForList().rightPopAndLeftPush(String sourceKey, String destinationKey);//将源key的队列的右边的一个值删除,然后塞入目标key的队列的左边,返回这个值
    注意:要缓存的对象必须实现Serializable接口,因为 Spring 会将对象先序列化再存入 Redis,否则报异常nested exception is java.lang.IllegalArgumentException: DefaultSerializer requires a Serializable……//;;/
    Set:
    redisTemplate.opsForValue().getAndSet(key, value)

    最后贴出一个网站,命令操作
    https://www.yiibai.com/redis/sets_sadd.html
     
  • 相关阅读:
    Mysql基本类型(字符串类型)——mysql之二
    MySQL 中索引的长度的限制
    MySQL索引长度限制
    WebStorm 2019 3.3 安装及破解教程附汉化教程 Jetbrains2020全系列 2020.1.2 最新激活补丁
    用Swoole4 打造高并发的PHP协程Mysql连接池
    phpsocket.io
    php并发加锁
    PHP字符串全排列算法
    php beast windows编译教程
    使用PHP-Beast加密你的PHP源代码
  • 原文地址:https://www.cnblogs.com/guagua-join-1/p/10965912.html
Copyright © 2011-2022 走看看