注解
package com.olivia.sdk.ann;
import java.lang.annotation.*;
import java.util.concurrent.TimeUnit;
/***
*
*/
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RedissonCacheAnn {
//组名称(user:info)
String group() default "";
//SpelExpression表达式的key,已#开头,单个字段#userId,对象中的字段#dto.userId
String key();
//超时时间单位(默认秒)
TimeUnit unit() default TimeUnit.SECONDS;
//超时时间-默认1个小时
long ttl() default 3600L;
}
实现类
package com.olivia.sdk.aspect;
import com.olivia.sdk.ann.RedissonCacheAnn;
import com.olivia.sdk.utils.SpelUtils;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;