springboot中redis操作String 对象 list 和Set
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了springboot中redis操作String 对象 list 和Set,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2314字,纯文字阅读大概需要4分钟。
内容图文
![springboot中redis操作String 对象 list 和Set](/upload/InfoBanner/zyjiaocheng/866/994ba12658354830b07bcf31586d5c3a.jpg)
pom文件中加入spring-boot-starter-redis依赖,使使用集成的RedisTemplate和StringRedisTemplate来操作,序列化使用jackson的ObjectMapper。
注入三个操作类
@Autowired private RedisTemplate redisTemplate; @Autowired private StringRedisTemplate stringRedisTemplate; @Autowired private ObjectMapper objectMapper;
1.redis操作String和对象
很简单,只要将key和value直接插入即可,使用StringRedisTemplate直接替换redisTemplate就好
String content = "redis_op_string_key"; String key = "redis_op_string_val"; ValueOperations valueOperations = redisTemplate.opsForValue(); valueOperations.set(key,content);//插入 Object result = valueOperations.get(key);//取出
2.redis操作对象
User user = new User(123,"test","测试"); final String content = objectMapper.writeValueAsString(user);//序列化 final String key = "redis_op_object"; ValueOperations valueOperations = redisTemplate.opsForValue(); valueOperations.set(key,content); Object result = valueOperations.get(key); if (null != result){ User obj = objectMapper.readValue(result.toString(),User.class); log.info("读取内容:{}",obj); }
3.redis操作list
List<Person> list = new ArrayList<>(); list.add(new Person(1,21,"张三","阿修罗","塔山1号")); list.add(new Person(2,22,"李四","阿修","塔山2号")); list.add(new Person(3,23,"王五","罗","塔山3号")); final String key ="redis:test:list"; ListOperations listOperations = redisTemplate.opsForList(); for(Person p:list){ listOperations.leftPush(key,p); } log.info("------取出redis中的list----"); Object res = listOperations.rightPop(key); Person resp; while(res != null){ resp=(Person)res; log.info(resp.toString()); res=listOperations.rightPop(key); }
4.redis操作set
List<PhoneUser> list=new ArrayList<>(); list.add(new PhoneUser("103",130.0)); list.add(new PhoneUser("101",120.0)); list.add(new PhoneUser("102",80.0)); list.add(new PhoneUser("105",70.0)); list.add(new PhoneUser("106",50.0)); list.add(new PhoneUser("104",150.0)); log.info("构造一组无序的用户手机充值对象列表:{}",list); final String key = "redis:sSet:key"; ZSetOperations zSetOperations = redisTemplate.opsForZSet(); for (PhoneUser p:list){ zSetOperations.add(key,p,p.getFare()); } Long size = zSetOperations.size(key); Set<PhoneUser> range = zSetOperations.range(key,0L,size); Set<Person> reverRange = zSetOperations.reverseRange(key,0L,size); for (PhoneUser u:range){ log.info("缓存读取排序后的列表:"+u); }
内容总结
以上是互联网集市为您收集整理的springboot中redis操作String 对象 list 和Set全部内容,希望文章能够帮你解决springboot中redis操作String 对象 list 和Set所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。