我正在尝试为缓存实现自定义注释。如果某些条件为真,则此注释应该缓存方法结果并刷新它。
onscroll
但问题在于运行驱逐和可缓存的顺序
离。我打电话的时候:
//annotation
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
@CacheEvict(
value = "sessionCache",
cacheManager = "sessionCacheManager",
keyGenerator="classNameKeyGenerator",
condition = "#refresh == true)",
beforeInvocation = true)
@Cacheable(
value = "sessionCache",
cacheManager = "sessionCacheManager",
keyGenerator="classNameKeyGenerator")
public @interface SessionCacheable {
}
//usage
@SessionCachable
Object someMethod(boolean refresh)
{
}
所以,在第三次调用缓存被正确驱逐之后,但在我看来,新的结果应该在之后缓存,但不是:/干杯!