1、Redis的java客户端
在java程序中应该如何操作Redis呢?这就需要使用Redis的Java客户端,就如同我们使用JDBC操作MySQL数据库一样。
Redis 的 Java 客户端很多,常用的几种:
- Jedis
- Lettuce
- Spring Data Redis
2、 Spring Data Redis
Spring 对 Redis 客户端进行了整合,提供了 Spring Data Redis,在Spring Boot项目中还提供了对应的Starter,即 spring-boot-starter-data-redis。springdataRedis是对java的redis客户端进行高度封装,简化redis开发
使用方式:
- 导入Spring Data Redis的maven坐标
- 配置Redis数据源
- 编写配置类,创建RedisTemplate对象
- 通过对RedisTemplate对象操作Redis
RedisTemplate针对大量api进行了归类封装,将同一数据类型的操作封装为Operation接口,具体分类如下:
接口 | 操作 |
---|---|
ValueOperations | string数据操作 |
SetOperations | set类型操作数据 |
ZSetOperations | zset类型数据操作 |
HashOperations | hash类型的数据操作 |
ListOperations | list类型的数据操作 |
代码实现
导入spring-data-redis依赖
<dependencies>
<!--spring-data-redis-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--test-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
</dependencies>
配置Redis数据源
spring:
redis:
host: localhost
port: 6379
password: 123456
server:
port: 8081
创建RedisTemplate对象,操作字符串
@SpringBootTest
public class RedisDemo {
//注入RedisTemplate
@Autowired
private RedisTemplate redisTemplate;
@Test
public void testString(){
//操作字符串
//1、获取字符串操作对象
ValueOperations valueOperations = redisTemplate.opsForValue();
//2、写入数据
valueOperations.set("username","xiaolin");
//3、读取数据
String value = (String) valueOperations.get("username");
System.out.println(value);
}
}