Spring Data Redis,是Spring Data 家族的一部分。 对Jedis客户端进行了封装,与spring进行了整合。可以非常方便的来实现redis的配置和操作。
1.RedisTemplate基本操作
Spring Data Redis 提供了一个工具类:RedisTemplate。里面封装了对于Redis的五种数据结构的各种操作,包括:
-
redisTemplate.opsForValue() :操作字符串
-
redisTemplate.opsForHash() :操作hash
-
redisTemplate.opsForList():操作list
-
redisTemplate.opsForSet():操作set
-
redisTemplate.opsForZSet():操作zset
其它一些通用命令,如expire,可以通过redisTemplate.xx()来直接调用
5种结构:
-
String:等同于java中的,
Map<String,String>
-
list:等同于java中的
Map<String,List<String>>
-
set:等同于java中的
Map<String,Set<String>>
-
sort_set:可排序的set
-
hash:等同于java中的:`Map<String,Map<String,String>>
2.
RedisTemplate在创建时,可以指定其泛型类型:
-
K:代表key 的数据类型
-
V: 代表value的数据类型
注意:这里的类型不是Redis中存储的数据类型,而是Java中的数据类型,RedisTemplate会自动将Java类型转为Redis支持的数据类型:字符串、字节、二进制等等。
RedisTemplate默认会采用JDK自带的序列化(Serialize)来对对象进行转换。生成的数据十分庞大,因此一般都会指定key和value为String类型,这样就由用户自己把对象序列化为json字符串来存储即可。
因为大部分情况下,都会使用key和value都为String的RedisTemplate,因此Spring就默认提供了这样一个实现:
3.测试案例
3.1需要在项目中引入Redis启动器:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
3.2在application.yml中配置文件中指定Redis地址:
spring:
redis:
host: 192.168.16.191
3.3在server中的部分使用
@Autowired private StringRedisTemplate redisTemplate; this.redisTemplate.opsForValue().set(); this.redisTemplate.delete();
后续更新