今天来做一个通过注解的形式实现redis缓存
在我们平时的redis的使用中经常会有一种写法,就是先查redis,如果redis中没有,再查数据库。
String key = KEY + "showButton";
if (redisClient.hasKey(key)) {
String str = redisClient.get(key, String.class);
result = JSON.parseArray(str, VaButtonConfig.class);
log.info("从redis获取按钮配置");
return result;
}else {
result = buttonConfigMapper.selectByExample(null);
redisClient.set(key,result,7,TimeUnit.DAYS);
log.info("将按钮配置存入redis");
return result;
}
像这种套路性的代码太多可以说有很多“重复”代码了。这里我们来做一个注解来实现上面的功能,简化我们的代码。
新建一个注解RedisCache,key表示我们redis缓存的key。expire缓存时间
package com.lw.study.redisInterupter;
import java.lang.annotation.*;
/**
* @author
* @date 10:28 2019/6/26
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@Documented
public @interface