redis五大类型用法
来源:互联网 发布:directx9安装需要网络 编辑:程序博客网 时间:2024/05/29 11:32
Redis五大类型:字符串(String)、哈希/散列/字典(Hash)、列表(List)、集合(Set)、有序集合(sorted set)五种Controller:@Resource RedisTemplate<String, String> redisTemplate;总括:redisTemplate.opsForValue();//操作字符串redisTemplate.opsForHash();//操作hashredisTemplate.opsForList();//操作listredisTemplate.opsForSet();//操作setredisTemplate.opsForZSet();//操作有序setString:
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.同815\16\17\18\19.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);
1
16INCRBY key increment将键的整数值按给定的数值增加17INCRBYFLOAT key increment将键的浮点值按给定的数值增加18DECR key将键的整数值减1
19DECRBY key decrement按给定数值减少键的整数值20APPEND key value将指定值附加到键.setBit(key, offset, value):key键对应的值value对应的ascii码,在offset的位置(从左向右数)变为value.(此处感谢@参考文章对我理解的帮助),由于二进制只有0和1,此处value只能取0和1,如图,其他值是超出范围的.getBit(key, offset):获取键对应值的ascii码的在offset处位值.@ascii码对照表
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集合Set8.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);//范围检索,返回ListredisTemplate.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)
艾玛,太累了,写着写着发现不用这么麻烦,看到文章中的表了吗?若在java中找不到相应方法就对照表中的一些”字段“在java中找,肯定能找到,而且基本不会浪费多少时间。关于List与Set万能的后人补充吧!
阅读全文
0 0
- redis五大类型用法
- redis五大类型用法
- redis五大类型用法
- redis五大类型用法
- redis五大类型用法
- redis五大类型数据用法
- Redis【五大基本类型】
- Jedis对Redis五大类型操作简单介绍
- redis的五种存储类型的具体用法
- redis的五种存储类型的具体用法
- Redis五类型
- Redis五大数据类型
- Redis五大数据类型
- Redis五种数据类型
- 【Redis】五种数据类型
- redis 五种数据类型
- redis 五种数据类型
- Redis五种数据类型
- blog_的结构图
- 五、PHP的下载、安装、测试及目录结构
- getattribute和描述符
- js中的位运算符(按位与、按位或、按位异或)的使用方法
- servlet中传参方法总结
- redis五大类型用法
- Ubuntu输入sudo cd提示找不到命令,su提示认证失败
- 复习
- 离散题目10
- HBase开发中RpcRetryingCaller Call exception问题
- Android Picasso实现圆形图片和圆角图片
- codeforces 812b Sagheer, the Hausmeister
- Linux系统内存管理
- 【脚本语言系列】关于PythonWeb服务器Bottle,你需要知道的事