扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
本文小编为大家详细介绍“Springboot整合redis如何配置”,内容详细,步骤清晰,细节处理妥当,希望这篇“Springboot整合redis如何配置”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
我们提供的服务有:成都网站设计、网站制作、微信公众号开发、网站优化、网站认证、略阳ssl等。为1000多家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的略阳网站制作公司
org.springframework.boot spring-boot-starter-data-redis
#Redis本地服务器地址,注意要开启redis服务,即那个redis-server.exe spring.redis.host=127.0.0.1 #Redis服务器端口,默认为6379.若有改动按改动后的来 spring.redis.port=6379 #Redis服务器连接密码,默认为空,若有设置按设置的来 spring.redis.password= #连接池最大连接数,若为负责则表示没有任何限制 spring.redis.jedis.pool.max-active=8 #连接池最大阻塞等待时间,若为负责则表示没有任何限制 spring.redis.jedis.pool.max-wait=-1 #连接池中的最大空闲连接 spring.redis.jedis.pool.max-idle=8
spring: redis: # Redis本地服务器地址,注意要开启redis服务,即那个redis-server.exe host: 127.0.0.1 # Redis服务器端口,默认为6379.若有改动按改动后的来 port: 6379 #Redis服务器连接密码,默认为空,若有设置按设置的来 password: jedis: pool: # 连接池最大连接数,若为负数则表示没有任何限制 max-active: 8 # 连接池最大阻塞等待时间,若为负数则表示没有任何限制 max-wait: -1 # 连接池中的最大空闲连接 max-idle: 8
Redis模板分为两种,一种为RedisTemplate
,一种为StringRedisTemplate
如何选择取决于我们的redis存储的数据类型的需求
RedisTemplate
StringRedisTemplate
该模板是一个泛型类,故而该类可以对任意类型的key和value做操作
该模板的序列化方式为使用JdkSerializationRedisSerializer类得到一个字节数组,反序列化得到的是一个Object类型的数据
该类继承了RedisTemplate
public class StringRedisTemplate extends RedisTemplate
因为该类的泛型都设定为String,所以该类只能对key和value都是String类型的数据进行操作
首先我们先来讲两种模板的区别
知道了两种模板的区别后,我们就好选择了,如果我们需要的是对对象等实体类型或者除String外的基本数据类型的数据进行操作时,那么我们就选择RedisTemplate
,如果对String类型的自然就使用StringRedisTemplate,我们当然也可以使用RedisTemplate
操作如int之类的基本数据类型,只是需要在反序列化时应使用String类型接收即可,一切以具体需求为准。
因为着重讲配置,所以SpringRedisTemplate和工具类这里不做描述
自定义配置类
package cn.wenhe9.config; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.cache.annotation.CachingConfigurerSupport; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.cache.RedisCacheConfiguration; import org.springframework.data.redis.cache.RedisCacheManager; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.RedisSerializationContext; import org.springframework.data.redis.serializer.RedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer; import java.time.Duration; @Configuration public class RedisConfig extends CachingConfigurerSupport { /** * 自定义RedisTemplate * @param redisConnectionFactory * @return */ @Bean public RedisTemplateredisTemplate(RedisConnectionFactory redisConnectionFactory) { //大多数情况,都是选用 RedisTemplate template = new RedisTemplate<>(); template.setConnectionFactory(redisConnectionFactory); // 使用JSON的序列化对象,对数据key和value进行序列化转换 Jackson2JsonRedisSerializer
读到这里,这篇“Springboot整合redis如何配置”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注创新互联行业资讯频道。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流