【原創】Java基礎之Freemarker(1)模板加載及清空機制


一 freemarker加載模版機制

freemarker中的配置項template_update_delay表明模版的緩存時間,單位是s,超過緩存時間則從磁盤加載最新的模版,具體細節如下:

1)freemarker中獲取模版的方法在Configuration中:

 

2)Configuration的getTemplate方法直接代理給TemplateCache:

 

3)TemplateCache中首先會嘗試從緩存中加載模版:

 

然后根據template_update_delay來判斷緩存中的模版是否需要刷新;

 

 

二 Freemarker自帶刷新接口

Freemarker本身提供的刷新接口是Configuration的clearTemplateCache方法,可以用來清空所有的模版緩存;

1 使用spring mvc

1.1 配置template_update_delay

 

1.2 手工刷新

 

 

2 直接使用freemarker

2.1 配置template_update_delay

 

2.2 手工刷新

 

 以上手工刷新方法的優點是不需要修改源代碼,直接利用freemarker原有功能,缺點是所有模版緩存都會被刷新;如果希望只刷新指定的模版,只能二次開發;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM