我是靠谱客的博主 酷炫灰狼,这篇文章主要介绍springboot2.x+ redis来进行数据的缓存操作springboot2.1.5 + redis + mybatis,现在分享给大家,希望可以做个参考。
springboot2.1.5 + redis + mybatis
demo地址
对比springboot 1.x的版本,对Redis的配置发生了很大的变换
复制代码
1
2
3Redis数据默认过期时间 Redis的数据序列化,需要在RedisCacheConfiguration内进行
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46/** * 1.设置@cacheable 序列化方式 * 2.设置 redis 数据默认过期时间,默认2小时 * @return */ @Bean public RedisCacheConfiguration redisCacheConfiguration(){ FastJsonRedisSerializer<Object> fastJsonRedisSerializer = new FastJsonRedisSerializer<>(Object.class); RedisCacheConfiguration configuration = RedisCacheConfiguration.defaultCacheConfig(); configuration = configuration.serializeValuesWith( RedisSerializationContext. SerializationPair. fromSerializer(fastJsonRedisSerializer) ).entryTtl(Duration.ofMillis(expirationLong));//Duration.ofMillis(expiration) return configuration; } @Bean(name = "redisTemplate") @ConditionalOnMissingBean(name = "redisTemplate") public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) { RedisTemplate<Object, Object> template = new RedisTemplate<>(); /** -------------------下面的序列化可以屏蔽,因为redisCacheConfiguration中已经配置需要进行的变换,下面的代码是多余的--------------------- */ //序列化 FastJsonRedisSerializer fastJsonRedisSerializer = new FastJsonRedisSerializer(Object.class); // value值的序列化采用fastJsonRedisSerializer template.setValueSerializer(fastJsonRedisSerializer); template.setHashValueSerializer(fastJsonRedisSerializer); // key的序列化采用StringRedisSerializer template.setKeySerializer(new StringRedisSerializer()); template.setHashKeySerializer(new StringRedisSerializer()); /** -------------------使得json对象是转成java对象-------------------- */ // 全局开启AutoType,不建议使用 ParserConfig.getGlobalInstance().setAutoTypeSupport(true); // 建议使用这种方式,小范围指定白名单addAccept中的内容是实体类的文件夹,从java目录下指定,需要使用的就多指定文件夹 // ParserConfig.getGlobalInstance().addAccept("com.jing.modules.dto"); // ParserConfig.getGlobalInstance().addAccept("com.jing.modules.dto"); // ParserConfig.getGlobalInstance().addAccept("com.jing.modules.dto"); // ParserConfig.getGlobalInstance().addAccept("com.jing.modules.dto"); template.setConnectionFactory(redisConnectionFactory); return template; }
最后
以上就是酷炫灰狼最近收集整理的关于springboot2.x+ redis来进行数据的缓存操作springboot2.1.5 + redis + mybatis的全部内容,更多相关springboot2.x+内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复