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. }