springboot集成Redis
- 1 windows平台安装Redis
- 2 引入依赖
- 3 修改配置文件
- 4 启动类添加注解
- 5 指定缓存哪个方法
- 6 配置Redis的超时时间
- 小BUG
- 测试
对于项目中一些访问量较大的接口,配置上Redis缓存,提升系统运行速度。
1 windows平台安装Redis
github.com/MicrosoftArchive/redis
解压
redis-server.exe启动程序
redis.windows.conf核心配置文件
启动指令:redis-server redis.windows.conf
生产环境必须使用linux版本的Redis…
2 引入依赖
修改pom文件
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
3 修改配置文件
修改application.properties文件
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=
4 启动类添加注解
@EnableCaching
5 指定缓存哪个方法
@Cacheable(value = "listCategoryForCustomer")
6 配置Redis的超时时间
package com.imooc.mall.config;
import java.time.Duration;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.cache.RedisCacheConfiguration;
import org.springframework.data.redis.cache.RedisCacheManager;
import org.springframework.data.redis.cache.RedisCacheWriter;
import org.springframework.data.redis.connection.RedisConnectionFactory;
/**
* 描述: 缓存的配置类
*/
@Configuration
@EnableCaching
public class CachingConfig {
@Bean
public RedisCacheManager redisCacheManager(RedisConnectionFactory connectionFactory) {
RedisCacheWriter redisCacheWriter = RedisCacheWriter
.lockingRedisCacheWriter(connectionFactory);
RedisCacheConfiguration cacheConfiguration = RedisCacheConfiguration.defaultCacheConfig();
cacheConfiguration = cacheConfiguration.entryTtl(Duration.ofSeconds(30));
RedisCacheManager redisCacheManager = new RedisCacheManager(redisCacheWriter,
cacheConfiguration);
return redisCacheManager;
}
}
小BUG
类保存到缓存中,必须实现Serializable接口。。。
测试
第一次访问
1228 ms
第二次访问
15 ms