freemarker中的配置項template_update_delay代表模版的緩存時間,單位是s,超過緩存時間則從磁盤加載最新的模版,具體細節以下:spring
1)freemarker中獲取模版的方法在Configuration中:緩存
2)Configuration的getTemplate方法直接代理給TemplateCache:mvc
3)TemplateCache中首先會嘗試從緩存中加載模版:3d
而後根據template_update_delay來判斷緩存中的模版是否須要刷新;代理
Freemarker自己提供的刷新接口是Configuration的clearTemplateCache方法,能夠用來清空全部的模版緩存;blog
以上手工刷新方法的優勢是不須要修改源代碼,直接利用freemarker原有功能,缺點是全部模版緩存都會被刷新;若是但願只刷新指定的模版,只能二次開發;接口