书单推荐:成为Java顶级程序员架构师 ,这20来本(高薪)必看点击获取
使用的是 详细的配置类 顶层的一个接口,泛型。K 表示key的数据类型, V 表示 value的数据类型。 Sping提供的RedisTemplate 的实现,K V 都是字符串,它针对redis客户端中大量api进行了归类封装,将同一类型操作封装为operation接口。一般直接通过IOC注入该类实例使用。SpringBoot整合Redis
SpingBoot
对于 Redis
提供了开箱即用的 starter
。而且抽象出了一层更加高级的API,底层Redis的客户端对用户来说是透明的。可以是 Jedis
,也可以是 Lettuce
导入依赖
Lettuce
作为Redis
的客户端<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId></dependency><dependency>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId></dependency><dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId></dependency>
配置
org.springframework.boot.autoconfigure.data.redis.RedisProperties
spring:
redis:
database: 0
host: localhost
port: 6379
password: # 连接超时时间(毫秒)
timeout: 2000
lettuce:
pool: # 连接池最大连接数(使用负值表示没有限制)
max-active: 8 # 连接池最大阻塞等待时间(使用负值表示没有限制)
max-wait: -1 # 连接池中的最大空闲连接
max-idle: 8 # 连接池中的最小空闲连接
min-idle: 0
Spring提供的客户端
RedisTemplate<K, V>
StringRedisTemplate
@Autowiredprivate StringRedisTemplate stringRedisTemplate;
ListOperations stringRedisTemplate.opsForList();// 返回操作list的operationSetOperations stringRedisTemplate.opsForSet();// 返回操作set的operationValueOperations stringRedisTemplate.opsForValue();// 返回操作普通k/v的operationZSetOperations stringRedisTemplate.opsForZSet();// 返回操作zset的operationHashOperations stringRedisTemplate.opsForHash();// 返回操作hash的operation
简单的CRUD
@Autowiredprivate StringRedisTemplate stringRedisTemplate;public void foo() { this.stringRedisTemplate.opsForValue().set("name", "SpringBoot"); this.stringRedisTemplate.opsForValue().get("name"); this.stringRedisTemplate.delete("name");
}
转载请注明:谷谷点程序 » SpringBoot如何整合Redis