0%

spring boot | spring-boot-starter-data-redis

引入依赖。

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

常规配置如下: 在 application.yml 配置文件中配置 redis 的连接信息

1
2
3
4
5
6
spring:
redis:
host: localhost
port: 6379
password: 123456
database: 0

如果使用的是集群,那么使用如下配置方式:

1
2
3
4
5
6
spring:
redis:
password: 123456
cluster:
nodes: 10.255.144.115:7001,10.255.144.115:7002,10.255.144.115:7003,10.255.144.115:7004,10.255.144.115:7005,10.255.144.115:7006
max-redirects: 3

用法

创建Dao层

创建 dao 包,创建一个 User 类。

1
2
3
4
5
6
7
8
9
10
11
12
13
import lombok.Data;
import java.io.Serializable;

@Data
public class User implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private String userName;
private String password;
private String email;
private String nickname;
private String regTime;
}

创建Service层

创建一个 service 包,创建一个 RedisService 类,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import com.zlf.learning.Redis.dao.User;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Service;

@Service
@Slf4j
public class RedisService {

@Autowired
private RedisTemplate redisTemplate;

public boolean setUser(User user){
ValueOperations ops=redisTemplate.opsForValue();
ops.set(user.getNickname(),user);
log.info("{}",user.toString());
return true;
}

public User getUser(String name){
ValueOperations ops=redisTemplate.opsForValue();
return (User) ops.get(name);
}
}

这里面的代码也非常的清晰,使用到的 redisTemplate ,类似于 JdbcTemplate.ValueOperations ops=redisTemplate.opsForValue();就是连接了redis数据库。之后就可以从redis 中获取和添加值啦。

Controller层

创建一个 controller 包,创建一个 RedisController类代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
@RestController
public class RedisController {

@Autowired
private RedisService redisService;

@RequestMapping("/getUser")
public User getUser(){
String name="quellan";
return redisService.getUser(name);
}

@RequestMapping("/setUser")
public String setUser(){
User user=new User("aa@qq.com","quellan","123456","朱",new Date().getTime()+"");
redisService.setUser(user);
return "添加成功";
}
}
请我喝杯咖啡吧~