當請求某些模板時是否可以繞過Freemarker緩存?我意識到我可能不得不實現自己的TemplateLoader才能做到這一點,但即便如此,當模板A被請求時,我看不到檢查緩存的方式,但在請求模板B時繞過它?繞過FreeMarker緩存?
如果這是不可能的,我只需要完全禁用緩存。
當請求某些模板時是否可以繞過Freemarker緩存?我意識到我可能不得不實現自己的TemplateLoader才能做到這一點,但即便如此,當模板A被請求時,我看不到檢查緩存的方式,但在請求模板B時繞過它?繞過FreeMarker緩存?
如果這是不可能的,我只需要完全禁用緩存。
嘗試在您configuration禁用緩存:
configuration.setTemplateUpdateDelay(0);
這應當引起它來檢查模板的每一個它要求的時間較新的版本。
要僅跳過某些模板的緩存,您只需覆蓋getLastModified
即可爲特定模板返回一個非常舊的日期,從而強制重新加載。
您可以在配置對象本身上進行設置。詳細信息請參見this page。直接或通過一些web框架
cfg.setSetting(Configuration.CACHE_STORAGE_KEY, "strong:0, soft:0");
您正在使用的freemarker:
爲了您的具體問題,你可以做到以下幾點? – krosenvold 2008-12-11 22:15:25