工具:IDEA
spring boot version: 2.1.3
- 使用 Spring Initializr 创建最简单的spring-boot项目
不用添加任何依赖,后面可以根据需要添加。
- 添加依赖:
- spring-boot-redis + jedis
<!-- spring-boot集成redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<!-- 排除redis默认客户端lettuce -->
<exclusions>
<exclusion>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- 使用jedis作为redis的客户端 -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
- spring-boot-web(后面编写接口测试)
<!--web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
- application.properties配置redis
# redis 配置
# redis 服务器IP(默认:localhost)
spring.redis.host=localhost
# 端口号(默认:6379)
spring.redis.port=6379
# 客户端超时时间
spring.redis.timeout=10000
# 最大空闲数,使用负值表示不限数量(默认:8)
spring.redis.jedis.pool.max-idle=8
# 最大数据库连接数,使用负值表示无限制(默认:8)
spring.redis.jedis.pool.max-active=8
-
启动本地 redis-server
redis-server.png - 测试代码
- RedisUtil工具类(部分代码)
该工具类来自:GitHub文档
@Component
public class RedisUtil {
@Autowired
private StringRedisTemplate redisTemplate;
/**
* 是否存在key
* @param key
* @return
*/
public Boolean hasKey(String key) {
return redisTemplate.hasKey(key);
}
/**
* 设置指定 key 的值
* @param key
* @param value
*/
public void set(String key, String value) {
redisTemplate.opsForValue().set(key, value);
}
/**
* 获取指定 key 的值
* @param key
* @return
*/
public String get(String key) {
return redisTemplate.opsForValue().get(key);
}
// 其他方法省略
}
- 测试接口代码
@RestController
public class RedisTestController {
@Autowired
private RedisUtil redisUtil;
@RequestMapping("/key")
public String getKey(String key){
if(!redisUtil.hasKey(key)){
redisUtil.set(key, "bearPotMan");
}
return redisUtil.get(key);
}
}
- 测试结果
redis-test-result.png
结束语:没有过多理论性的知识或原理的讲解,只是从一个普通开发的角度来使用。
我是bearPotMan,一个经验不足的十八线演(码)员(农)。
Know everything,control everything!
网友评论