电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > DOCX文档下载
分享到微信 分享到微博 分享到QQ空间

spring中使用redistemplate操作redis

  • 资源ID:55712758       资源大小:46.59KB        全文页数:43页
  • 资源格式: DOCX        下载积分:0金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要0金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

spring中使用redistemplate操作redis

springspring 中使用中使用 redistemplateredistemplate 操作操作 redisredisSpring 中使用 RedisTemplate 操作 Redis(spring-data-redis)Redis 数据结构简介Redis 可以存储键与 5 种不同数据结构类型之间的映射,这 5 种数据结构类型分别为String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。下面来对这 5 种数据结构类型作简单的介绍:结构类型 结构存储的值 结构的读写能力String 可以是字符串、整数或者浮点数 对整个字符串或者字符串的其中一部分执行操作;对象和浮点数执行自增(increment)或者自减(decrement)List 一个链表,链表上的每个节点都包含了一个字符串 从链表的两端推入或者弹出元素;根据偏移量对链表进行修剪(trim);读取单个或者多个元素;根据值来查找或者移除元素Set 包含字符串的无序收集器(unorderedcollection),并且被包含的每个字符串都是独一无二的、各不相同 添加、获取、移除单个元素;检查一个元素是否存在于某个集合中;计算交集、并集、差集;从集合里卖弄随机获取元素Hash 包含键值对的无序散列表 添加、获取、移除单个键值对;获取所有键值对Zset 字符串成员(member)与浮点数分值(score)之间的有序映射,元素的排列顺序由分值的大小决定 添加、获取、删除单个元素;根据分值范围(range)或者成员来获取元素Redis 5 种数据结构的概念大致介绍到这边,下面将结合 Spring 封装的RedisTemplate 来对这 5 种数据结构的运用进行演示RedisTemplate 介绍Spring 封装了 RedisTemplate 对象来进行对 Redis 的各种操作,它支持所有的 Redis原生的 api。RedisTemplate 位于 spring-data-redis 包下。RedisTemplate 在 Spring 代码中的结构如下:org.springframework.data.redis.coreClass RedisTemplatejava.lang.Objectorg.springframework.data.redis.core.RedisAccessororg.springframework.data.redis.core.RedisTemplateType Parameters:Kthe Redis key type against which the template works (usually a String)模板中的 Redis key 的类型(通常为 String)如:RedisTemplate注意:如果没特殊情况,切勿定义成 RedisTemplate,否则根据里氏替换原则,使用的时候会造成类型错误 。Vthe Redis value type against which the template works模板中的 Redis value 的类型RedisTemplate 中定义了对 5 种数据结构操作redisTemplate.opsForValue();/操作字符串redisTemplate.opsForHash();/操作 hashredisTemplate.opsForList();/操作 listredisTemplate.opsForSet();/操作 setredisTemplate.opsForZSet();/操作有序 setStringRedisTemplate 与 RedisTemplate两者的关系是 StringRedisTemplate 继承 RedisTemplate。两者的数据是不共通的;也就是说 StringRedisTemplate 只能管理StringRedisTemplate 里面的数据,RedisTemplate 只能管理 RedisTemplate 中的数据。SDR 默认采用的序列化策略有两种,一种是 String 的序列化策略,一种是 JDK 的序列化策略。StringRedisTemplate 默认采用的是 String 的序列化策略,保存的 key 和 value 都是采用此策略序列化保存的。RedisTemplate 默认采用的是 JDK 的序列化策略,保存的 key 和 value 都是采用此策略序列化保存的。RedisTemplate 配置如下:复制代码Beanpublic RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory)Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);ObjectMapper om = new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);jackson2JsonRedisSerializer.setObjectMapper(om);RedisTemplate template = new RedisTemplate();template.setConnectionFactory(redisConnectionFactory);template.setKeySerializer(jackson2JsonRedisSerializer);template.setValueSerializer(jackson2JsonRedisSerializer);template.setHashKeySerializer(jackson2JsonRedisSerializer);template.setHashValueSerializer(jackson2JsonRedisSerializer);template.afterPropertiesSet();return template;复制代码Redis 的 String 数据结构 (推荐使用 StringRedisTemplate)注意:如果使用 RedisTemplate 需要更改序列化方式RedisSerializer stringSerializer = new StringRedisSerializer();template.setKeySerializer(stringSerializer );template.setValueSerializer(stringSerializer );template.setHashKeySerializer(stringSerializer );template.setHashValueSerializer(stringSerializer );public interface ValueOperationsRedis operations for simple (or in Redis terminology 'string') values.ValueOperations 可以对 String 数据结构进行操作:set void set(K key, V value);使用:redisTemplate.opsForValue().set(“name“,“tom“);结果:redisTemplate.opsForValue().get(“name“) 输出结果为 tomset void set(K key, V value, long timeout, TimeUnit unit);使用:redisTemplate.opsForValue().set(“name“,“tom“,10, TimeUnit.SECONDS);结果:redisTemplate.opsForValue().get(“name“)由于设置的是 10 秒失效,十秒之内查询有结果,十秒之后返回为 nullset void set(K key, V value, long offset);该方法是用 value 参数覆写(overwrite)给定 key 所储存的字符串值,从偏移量 offset 开始使用:template.opsForValue().set(“key“,“hello world“);template.opsForValue().set(“key“,“redis“, 6);System.out.println(“*“+template.opsForValue().get(“key“);结果:*hello redissetIfAbsent Boolean setIfAbsent(K key, V value);使用:System.out.println(template.opsForValue().setIfAbsent(“multi1“,“multi1“);/false multi1 之前已经存在System.out.println(template.opsForValue().setIfAbsent(“multi111“,“multi111“);/true multi111 之前不存在结果:falsetruemultiSet void multiSet(Mapm);为多个键分别设置它们的值复制代码使用:Map maps = new HashMap();maps.put(“multi1“,“multi1“);maps.put(“multi2“,“multi2“);maps.put(“multi3“,“multi3“);template.opsForValue().multiSet(maps);List keys = new ArrayList();keys.add(“multi1“);keys.add(“multi2“);keys.add(“multi3“);System.out.println(template.opsForValue().multiGet(keys);结果:multi1, multi2, multi3复制代码multiSetIfAbsent Boolean multiSetIfAbsent(Mapm);为多个键分别设置它们的值,如果存在则返回 false,不存在返回 true复制代码使用:Map maps = new HashMap();maps.put(“multi11“,“multi11“);maps.put(“multi22“,“multi22“);maps.put(“multi33“,“multi33“);Map maps2 = new HashMap();maps2.put(“multi1“,“multi1“);maps2.put(“multi2“,“multi2“);maps2.put(“multi3“,“multi3“);System.out.println(template.opsForValue().multiSetIfAbsent(maps);System.out.println(template.opsForValue().multiSetIfAbsent(maps2);结果:truefalse复制代码get V get(Object key);使用:template.opsForValue().set(“key“,“hello world“);System.out.println(“*

注意事项

本文(spring中使用redistemplate操作redis)为本站会员(m****)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。

分享当前资源【spring中使用redistemplate操作redis】到朋友圈,您即可以免费下载此资源!
微信扫一扫分享到朋友圈
二维码
操作提示:任选上面一个二维码,打开微信,点击“发现”使用“扫一扫”,即可将选择的网页分享到朋友圈
您可能感兴趣的------------------------------------------------------------------------------------------------------



关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.