SpringBoot2.0 整合CacheManager

1、引入相关的jar

<dependency>
     <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

2、配置redis

spring:
  redis:
    password:
    host: 192.168.1.1

3、新增redis配置类

@EnableCaching
@Configuration
@AllArgsConstructor
@AutoConfigureBefore(RedisAutoConfiguration.class)
public class RedisTemplateConfig {
    private final RedisConnectionFactory factory;

    @Bean
    public RedisTemplate<String, Object> redisTemplate() {
        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        redisTemplate.setHashKeySerializer(new StringRedisSerializer());
        redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
        redisTemplate.setHashValueSerializer(new JdkSerializationRedisSerializer());
        redisTemplate.setConnectionFactory(factory);
        return redisTemplate;
    }
}

4、使用CacheManger

注意:保存到cache里的实体,一定要序列化

@Autowired
    private CacheManager cacheManager;

@GetMapping("/cache")
    public Object getCache() {
        Cache cache = cacheManager.getCache("cache");
        if (cache != null && cache.get("user") != null) {
            return cache.get("user").get();
        }
        User user = new User(1,"zhangsan",20);
        cache.put("user", user);
        return user;

    }

 

 

 


版权声明:本文为tanxxtarena原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。