ssss什么是Redis?redis中文官方网站
Redis自动配置
ssss①、引入redis场景
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
sdsdsddsdsdsdsss
ssss②、自动配置(所有官方设置的场景都在spring-boot-autoconfigure)
sdsdsdsdsddsdsdsdss
sdsdsss 分析RedisAutoConfiguration 自动配置类:
ssdsddsss①、RedisAutoConfiguration 自动配置类。RedisProperties 属性类 --> spring.redis.xxx是对redis的配置
@ConfigurationProperties(prefix = "spring.redis")
public class RedisProperties {...}
ssdsddsss②、连接工厂是准备好的(前提Redis客户端存在)。LettuceConnectionConfiguration、JedisConnectionConfiguration
sssdsdds
sssdsddsadds
ssdsddsss③、自动注入了RedisTemplate<Object, Object> : xxxTemplate;
sssdddsssdsddsss④、自动注入了StringRedisTemplate;k:v都是String
ssdsdsssddds
ssdsddsss【注】:底层只要我们使用 StringRedisTemplate、RedisTemplate就可以操作redis
redis环境搭建:
ssdsddsss1、阿里云按量付费redis。(经典网络)
ssdsddsss2、申请redis的公网连接地址
ssdsddsss3、修改白名单 允许0.0.0.0/0 访问(所有外网都能访问)
RedisTemplate与Lettuce
@Test
void testRedis(){
ValueOperations<String, String> operations = redisTemplate.opsForValue();
operations.set("hello","world");
String hello = operations.get("hello");
System.out.println(hello);
}
切换至jedis (源码有变,不知道还需要不需要设置client-type)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 导入jedis-->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
spring:
redis:
host: r-bp1nc7reqesxisgxpipd.redis.rds.aliyuncs.com
port: 6379
password: lfy:Lfy123456
client-type: jedis
jedis:
pool:
max-active: 10