Spring启动|创建自定义缓存注释和实现
Spring Boot | Create custom caching annotation and implementation
我想创建一个自定义 spring @Cachable 注释,我可以在其中定义过期时间(以秒为单位)。
问题是,我不知道如何在自定义注释中实现新方法 "expiresInSec()"。
这是我自定义的@Cachable 注释:
@Retention(RetentionPolicy.RUNTIME)
@Target(
{ElementType.TYPE, ElementType.METHOD})
public @interface Cachable
{
Cacheable cachable();
// cache entry expires in 1 hour by default
int expiresInSec() default 3600;
}
这是自定义注解的调用:
@Cachable(cachable = @Cacheable("WorkListRepository::getWorkList"), expiresInSec = 60)
但是expireInSec 参数不起作用。我必须在哪里实现这个参数方法。
谢谢
我想创建一个自定义 spring @Cachable 注释,我可以在其中定义过期时间(以秒为单位)。 问题是,我不知道如何在自定义注释中实现新方法 "expiresInSec()"。
这是我自定义的@Cachable 注释:
@Retention(RetentionPolicy.RUNTIME)
@Target(
{ElementType.TYPE, ElementType.METHOD})
public @interface Cachable
{
Cacheable cachable();
// cache entry expires in 1 hour by default
int expiresInSec() default 3600;
}
这是自定义注解的调用:
@Cachable(cachable = @Cacheable("WorkListRepository::getWorkList"), expiresInSec = 60)
但是expireInSec 参数不起作用。我必须在哪里实现这个参数方法。
谢谢