7.4 EvictInterceptor

EvictInterceptor可以根据CacheName注解自动清除缓存。以下是示例代码:

  1. @Before(EvictInterceptor.class)
  2. @CacheName(“blogList”)
  3. public void update() {
  4.     getModel(Blog.class).update();
  5.     redirect(“blog.html”);
  6. }

上例中的用法将清除cacheName为blogList的缓存数据,与其配合的CacheInterceptor会自动更新cacheName为blogList的缓存数据。

jfinal 3.6 版本支持 @CacheName 参数使用逗号分隔多个 cacheName,方便针对多个 cacheName 进行清除,例如:

  1. @Before(EvictInterceptor.class)
  2. @CacheName(“blogList, hotBlogList”)   // 逗号分隔多个 cacheName
  3. public void update() {
  4.    
  5. }