Springboot默认集成了spring-data-redis,所以只要在pom里加上starter和配置,就可以在项目中直接使用redis了,redis针对java有两个常用的客户端:jedis和lettuce,spring-data-redis相当于针对这两个客户端再进行了一次封装,spring boot 2.0以后默认使用lettuce。
配置
- pom.xml
<!--spring boot 2.0以后默认使用lettuce-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--lettuce 依赖commons-pool-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>
-
application-dev.yml
spring: redis: port: 6379 host: 127.0.0.1 lettuce: pool: max-active: 8 max-idle: 8 min-idle: 0 max-wait: 1000ms shutdown-timeout: 100ms
使用
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest
public class RedisTest { //Redis处理键值对缓存的测试类
@Autowired
private RedisTemplate<String,String> redisTemplate;
@Test
public void testStringRedisTemplate(){
set("test1","I‘m an enginer!");
get("test1");
}
//设置缓存
public void set(String key,String value){
redisTemplate.opsForValue().set(key, value);
System.out.println("当前存储键值对为=>key="+key+",value="+value);
}
//获取缓存
public void get(String key){
System.out.println("key="+key+",value="+redisTemplate.opsForValue().get(key));
}
}