Springboot整合redis配置详解
1.导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2.编写properties或者yml配置
#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
3.根据需要选择Redis模板
Redis模板分为两种,一种为RedisTemplate,一种为StringRedisTemplate 如何选择取决于我们的redis存储的数据类型的需求 首先我们先来讲两种模板的区别 RedisTemplate 该模板是一个泛型类,故而该类可以对任意类型的key和value做操作 该模板的序列化方式为使用JdkSerializationRedisSerializer类得到一个字节数组,反序列化得到的是一个Object类型的数据 StringRedisTemplate 该类继承了RedisTemplate public class StringRedisTemplate extends RedisTemplate<String, String> 因为该类的泛型都设定为String,所以该类只能对key和value都是String类型的数据进行操作 知道了两种模板的区别后,我们就好选择了,如果我们需要的是对对象等实体类型或者除String外的基本数据类型的数据进行操作时,那么我们就选择RedisTemplate,如果对String类型的自然就使用StringRedisTemplate,我们当然也可以使用RedisTemplate操作如int之类的基本数据类型,只是需要在反序列化时应使用String类型接收即可,一切以具体需求为准。
4.模板的配置和解释
因为着重讲配置,所以SpringRedisTemplate和工具类这里不做描述 自定义配置类