大家好,本篇文章是redis系列第二篇章节,主要是介绍redis的几种类型和类型之间的相关操作和数据类型的正确选型。本篇文章是基于springboot进行说明的常规操作
1.简单介绍redis的五种类型
1. string类型
string类型是redis五种数据类型中最简单的也是最常用的数据类型,key-value以字符串形式进行存储,我们可以看到官方文档的介绍https://redis.io/topics/data-types。 redis中字符串二进制安全的,并且可以存储任何东西,最大可以存储512M。
redisTemplate.opsForValue().set(key, value); //redis存储数据
redisTemplate.opsForValue().get(key); //redis获取数据
2. list(列表)
list列表,其实是一个简单的字符串列表,当我们使用list类型的时候,每次指定相同的key,进行插入的时候,默认是按照插入顺序进行排序,每次插入的值不会覆盖前面插入的时候。我们也可以指定在list的头部或者尾部进行数据插入。列表的最大长度是232-1个元素。
redisTemplate.opsForList().range(key, start, end);//获取list缓存的内容
redisTemplate.opsForList().rightPush(key, value);//list放入缓存
redisTemplate.opsForList().set(key, index, value);//根据索引修改list的值
redisTemplate.opsForList().index(key, index);//通过索引获取list的值

3. set(无序集合)
set集合和list集合看起来差不多,也是用来保存多个元素。但是和list最大的区别就是,set集合保存的元素中不允许出现重复值,有重复值的话就只会出现一个,并且set的结果是无序的,每次保存的结果顺序都有可能不一样。set集合还可以支持多个集合之间取交集、并集和差集。
redisTemplate.opsForSet().add(key, values);//存入set,值可以多个
redisTemplate.opsForSet().isMember(key, value);//查询值是否存在
redisTemplate.opsForSet().members(key);//根据key获取set中所有的值

4. sortset(有序集合)
sset听名字就知道了,sset是在set基础上面的升级,保留了set里面的特性,然后新增了sset中元素是可以排序的,与list不同的是list值可以重复,sset是对键值对唯一且有序的集合。这里面我就不用代码说明了。
5. hash数据类型
redis中hash类型,主要是用来存储对象用的。这个跟java中的Map<String,Object>很是相似。一般是用来操作对象比较大,一个一个存太麻烦。转换成map进行序列化存到redis当中,当然也可以用string字符串哈。
redisTemplate.opsForHash().putAll(key, map);//存入
redisTemplate.opsForHash().entries(key);//获取hashkey对应的所有键值
redisTemplate.opsForHash().put(key, item, value);//向一张hash表中放入数据,如果不存在将创建
redisTemplate.opsForHash().get(key, item);//获取hashkey里面的某一个item对应的值

2.五种类型分别适用于哪些场景
- string : 统计当天系统访问频率、商品计数、存储session、token等
- list列表: 获取最近七天系统登录用户信息,获取最新资讯等
- set : 获取当天总登录用户信息、获取最近几天都登录系统用户信息,记录身份证、ip地址等。
- sset : 用于比赛排名、积分排名、抽取某个范围内的值
- hash: 主要用于存储实体类的对象信息,key是唯一的。比如用户身份,权限等信息
3.总结
通过上面的简单分析,我想大家大概知道了redis的基本数据类型和数据类型的作用。在我们以后的开发过程中,不止局限于get和set,要对症下药,方能药到病除。redistemplate中还有很多语法可以用,没事的时候大家多看看,多总结总结,对未来或许要帮助。
END:
本文章是redis系列开篇第二章,主要介绍的是redis的几种数据类型和实用场景。关于简单在项目中使用redis,请参考上一篇文章
Redis连载系列(一) redis的日常使用
欢迎大家关注我的个人公众号一起成长,一起进步 。本人比较才疏学浅,如有错误,欢迎指正

本文为Redis系列的第二部分,介绍了Redis的五种基本数据类型:String、List、Set、SortSet和Hash,详细阐述了每种类型的特性和适用场景,如String用于统计、存储session,List用于获取最近信息,Set用于记录唯一信息,SortSet用于排名,Hash用于存储对象信息。文章鼓励读者根据需求选择合适的数据类型,并了解Redis的更多操作。
813

被折叠的 条评论
为什么被折叠?



