绕过FreeMarker缓存?

时间:2008-12-11 21:57:56

标签: java caching freemarker

在请求某些模板时是否可以绕过Freemarker缓存?我意识到我可能必须实现我自己的TemplateLoader才能做到这一点,但即便如此,当请求模板A时我看不到检查缓存的方法,但是在请求模板B时绕过它?

如果无法做到这一点,我只需要完全禁用缓存。

2 个答案:

答案 0 :(得分:3)

尝试禁用configuration上的缓存:

configuration.setTemplateUpdateDelay(0);

这应该使它在每次请求时检查更新版本的模板。

要仅跳过某些模板的缓存,您只需覆盖getLastModified即可为某些模板返回一个非常旧的日期,从而强制重新加载。

答案 1 :(得分:1)

您可以在配置对象本身上设置它。有关详细信息,请参阅this page

对于您的特定问题,您可以执行以下操作:

cfg.setSetting(Configuration.CACHE_STORAGE_KEY, "strong:0, soft:0");