Springboot集成Redis实例分析

Springboot集成Redis实例分析

这篇“Springboot集成Redis实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Springboot集成Redis实例分析”文章吧。

依赖包

Springboot集成Redis实例分析

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

配置文件(application.properties)

#Redis数据库索引(默认为0)spring.redis.database=0#Redis服务器地址spring.redis.host=x.x.x.x#Redis服务器连接端口spring.redis.port=6738#Redis服务器连接密码(默认为空)spring.redis.password=#连接超时时间(毫秒)spring.redis.timeout=10000#连接池最大连接数(使用负值表示没有限制)spring.redis.jedis.pool.max-active=8#连接池最大阻塞等待时间(使用负值表示没有限制)spring.redis.jedis.pool.max-wait=-1ms#连接池中的最大空闲连接spring.redis.jedis.pool.max-idle=8#连接池中的最小空闲连接spring.redis.jedis.pool.min-idle=0

配置文件(RedisConfig.java)

packagecom.gxr.dmsData.config;importcom.fasterxml.jackson.annotation.JsonAutoDetect;importcom.fasterxml.jackson.annotation.PropertyAccessor;importcom.fasterxml.jackson.databind.ObjectMapper;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;importorg.springframework.data.redis.connection.RedisConnectionFactory;importorg.springframework.data.redis.core.RedisTemplate;importorg.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;importorg.springframework.data.redis.serializer.RedisSerializer;importorg.springframework.data.redis.serializer.StringRedisSerializer;importjava.text.SimpleDateFormat;/***@author:gongxr*@description:自定义RedisTemplate*@date:Createdin2021/6/30*/@ConfigurationpublicclassRedisConfig{@BeanpublicRedisTemplate<Object,Object>redisTemplate(RedisConnectionFactoryredisConnectionFactory){RedisTemplate<Object,Object>redisTemplate=newRedisTemplate<>();redisTemplate.setConnectionFactory(redisConnectionFactory);//修改key的默认序列化器为stringRedisSerializer<String>stringRedisSerializer=newStringRedisSerializer();redisTemplate.setDefaultSerializer(stringRedisSerializer);//自定义对象转换ObjectMapperobjectMapper=newObjectMapper();objectMapper.setDateFormat(newSimpleDateFormat("yyyy-MM-ddHH:mm:ss"));objectMapper.setVisibility(PropertyAccessor.ALL,JsonAutoDetect.Visibility.ANY);objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);Jackson2JsonRedisSerializer<Object>valueSerializer=newJackson2JsonRedisSerializer<>(Object.class);valueSerializer.setObjectMapper(objectMapper);//redisTemplate.setValueSerializer(valueSerializer);//redisTemplate.setHashValueSerializer(valueSerializer);redisTemplate.afterPropertiesSet();returnredisTemplate;}}

测试代码

importcom.gxr.dmsData.common.BaseTest;importlombok.extern.slf4j.Slf4j;importorg.junit.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.data.redis.core.RedisTemplate;importjava.util.Set;/***@author:gongxr*@description:*@date:Createdin2021/6/30*/@Slf4jpublicclassTestRedisextendsBaseTest{@AutowiredprivateRedisTemplateredisTemplate;/***RedisTemplate中定义了对5种数据结构操作*redisTemplate.opsForValue();//操作字符串*redisTemplate.opsForHash();//操作hash*redisTemplate.opsForList();//操作list*redisTemplate.opsForSet();//操作set*redisTemplate.opsForZSet();//操作有序set*/@TestpublicvoidtestRedisGet(){Stringkey="adviceCalculateTime";Booleanb=redisTemplate.hasKey(key);log.info("key是否存在:{}",b);Objecto=redisTemplate.boundValueOps(key).get();log.info(redisTemplate.toString());log.info("查询结果:{}",o);}/***map类型*/@TestpublicvoidtestRedisHash(){Stringkey="RRS_CURRENCY_CACHE";Objecto=redisTemplate.boundHashOps(key).get("590");log.info("查询结果:{}",o.toString());}/***set类型*/@TestpublicvoidtestRedisSet(){Stringkey="goodsDataSyncSkc:set";Setset=redisTemplate.boundSetOps(key).members();log.info("查询结果:{}",set.size());Strings=(String)redisTemplate.boundSetOps(key).randomMember();log.info("查询结果:{}",s);}}

以上就是关于“Springboot集成Redis实例分析”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注恰卡编程网行业资讯频道。

发布于 2022-03-29 22:27:37
收藏
分享
海报
0 条评论
34
上一篇:springboot中RedisTemplate如何使用 下一篇:SpringBoot整合redis客户端超时怎么解决
目录

    0 条评论

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

    忘记密码?

    图形验证码