springboot整合redis实例分析

springboot整合redis实例分析

这篇文章主要介绍了springboot整合redis实例分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇springboot整合redis实例分析文章都会有所收获,下面我们一起来看看吧。

导入redis pom文件

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>

编写redis配置

spring:redis:password:port:6379host:localhostdatabase:0jedis:pool:##连接池最大连接数(使用负值表示没有限制)#spring.redis.pool.max-active=8max-active:8##连接池最大阻塞等待时间(使用负值表示没有限制)#spring.redis.pool.max-wait=-1max-wait:-1##连接池中的最大空闲连接#spring.redis.pool.max-idle=8max-idle:8##连接池中的最小空闲连接#spring.redis.pool.min-idle=0min-idle:0##连接超时时间(毫秒)lettuce:shutdown-timeout:0

编写springConfig文件

由于存储需要序列化,所以我们要配置redis的序列化方式,如果不配置的话key和value默认使用的都是StringRedisSerializer,只能用来存储String类型的数据,因此需要配置我们常用的类型。同时我们的Java实体类也要一定要继承Serializable接口

@ConfigurationpublicclassRedisConfig{@BeanpublicRedisTemplate<String,Object>redisTemplate(RedisConnectionFactoryfactory){RedisTemplate<String,Object>template=newRedisTemplate<>();template.setConnectionFactory(factory);Jackson2JsonRedisSerializerjackson2JsonRedisSerializer=newJackson2JsonRedisSerializer(Object.class);ObjectMapperom=newObjectMapper();om.setVisibility(PropertyAccessor.ALL,JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);//om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance,ObjectMapper.DefaultTyping.NON_FINAL,JsonTypeInfo.As.PROPERTY);jackson2JsonRedisSerializer.setObjectMapper(om);StringRedisSerializerstringRedisSerializer=newStringRedisSerializer();//key采用String的序列化方式template.setKeySerializer(stringRedisSerializer);//hash的key也采用String的序列化方式template.setHashKeySerializer(stringRedisSerializer);//value序列化方式采用jacksontemplate.setValueSerializer(jackson2JsonRedisSerializer);//hash的value序列化方式采用jacksontemplate.setHashValueSerializer(jackson2JsonRedisSerializer);template.afterPropertiesSet();returntemplate;}}

测试redis

在这一步前,我们要确定所连接的redis服务已经开启

@AutowiredprivateRedisTemplate<String,Object>redisTemplate;@TestpublicvoidtestSelect()throwsSQLException{redisTemplate.opsForValue().set("qqq",userMapper.findByUname("zengkaitian"));System.out.println("redis中获取的:"+redisTemplate.opsForValue().get("qqq"));}

测试结果

关于“springboot整合redis实例分析”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“springboot整合redis实例分析”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注恰卡编程网行业资讯频道。

发布于 2022-03-29 22:26:59
收藏
分享
海报
0 条评论
29
上一篇:PANet有什么作用 下一篇:Springboot怎么整合redis实现简单的数据写入和读取
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码