Redis作为开源分布式高并发缓存,使用范围非常广泛,主流互联网公司几乎都在使用。
Java Spring Boot 2.0实战开发Redis缓存可以参考下面的步骤,Redis安装可以直接使用Linux仓库,特定版本请使用Wget下载安装。
Java Spring Boot 2.0连接Redis服务器,可以在配置文件 application.properties中修改控制参数,包括安全、连接池、超时等参数。
下面介绍一下如何使用Java Spring Boot 2.0开发Redis缓存。
首先第一步要新建一个Java Spring Boot 2.0的项目,然后引入Spring Data Redis,Linux安装Redis服务器:
1、创建 Spring Boot 2.0 项目
使用Eclipse或者IDEA新建即可,完整的项目的代码结构如下
2、修改POM文件 引入 Spring Data Redis
org.springframework.boot
spring-boot-starter-data-redis
3、创建RedisRepository仓储接口
import java.util.Map;
import com.frankxulei.models.Users;
/*
- @Package: com.frankxulei
- @ClassName: RedisRepository 仓储模式
- @Desc : 《阿里巴巴Java Spring Boot 2.0开发实战课程》参考代码
*/
public interface RedisRepository {
Users find(Integer id);
Map<Integer, Users> findAll();
void save(Users user);
void update(Users user);
void delete(Integer id);
}
4、Linux安装Redis服务器
5、配置文件
项目配置文件中要加入Redis服务器配置参数,这样Spring Boot 才会自动创建Bean,注入到需要的地方。
REDIS (RedisProperties)
spring.redis.database=0
spring.redis.host=localhost
spring.redis.port=6379
这里配置了最基本的Redis服务器和端口的名字,生产环境请启用身份验证,还有SSL连接,以保障数据安全。
6、Redis服务器参数详解:
除了简单的地址端口外,还可以指定许多复杂的参数,比如连接池、以及集群参数等。
以下是详细配置参数的详细说明
spring.redis.cluster.max-redirects= # 集群从节点转发的数量. spring.redis.cluster.nodes= # 集群节点,逗号分隔. spring.redis.database=0 # 使用的缓存索引编号. spring.redis.url= # 连接URL,如: redis://user:password@example.com:6379 spring.redis.host=localhost # 主机. spring.redis.jedis.pool.max-active=8 # 连接池的最大活动连接数量. spring.redis.jedis.pool.max-idle=8 # 连接池的最大空闲连接数量. spring.redis.jedis.pool.max-wait=-1ms # 连接池分配连接的等待时间. spring.redis.jedis.pool.min-idle=0 # 最小空闲连接数量. spring.redis.lettuce.pool.max-active=8 # 连接池最大活动连接数量. spring.redis.lettuce.pool.max-idle=8 # 连接池最大空闲连接数量,负数表示不限制. spring.redis.lettuce.pool.max-wait=-1ms # 连接池分配连接的最大等待时间,负数表示无限等待不超时. spring.redis.lettuce.pool.min-idle=0 # 连接池最小空闲连接数量. spring.redis.lettuce.shutdown-timeout=100ms # 关机超时时间. spring.redis.password= # Redis服务器的密码 spring.redis.port=6379 # Redis服务器端口. spring.redis.sentinel.master= # Redis主服务器地址. spring.redis.sentinel.nodes= # 逗号分隔的键值对形式的服务器列表. spring.redis.ssl=false # 是否启用SSL连接.
spring.redis.timeout= # 连接超时