一、freemarker簡介
網頁靜態化技術和快取技術的共同點都是為了減輕資料庫的訪問壓力,但是具體的應用場景不同,快取比較適合小規模的資料,而網頁靜態化比較適合大規模且相對變化不太頻繁的資料。另外網頁靜態化還有利於seo。
另外我們如果將網頁以純靜態化的形式展現,就可以使用nginx這樣的高效能的web伺服器來部署。nginx可以承載5萬的併發,而tomcat只有幾百。
二、配置步驟
1、web專案中匯入frammarker jar包
org.freemarker
freemarker
2.3.23
(1) 為了指定ftl模板所在位置;
(2) 指定編碼方式
4、在實現類中使用這一工具
(1)注入
@autowired
private freemarkerconfigurer freemarkerconfigurer;
@value("$")
private string pagedir;
(2)使用
使用步驟:
第一步:建立乙個 configuration 物件,直接 new 乙個物件。構造方法的引數就是 freemarker的版本號。
第二步:設定模板檔案所在的路徑。
第三步:設定模板檔案使用的字符集。一般就是 utf-8.
第四步:載入乙個模板,建立乙個模板物件。
第五步:建立乙個模板使用的資料集,可以是 pojo 也可以是 map。一般是 map。
第六步:建立乙個 writer 物件,一般建立一 filewriter 物件,指定生成的檔名。
第七步:呼叫模板物件的 process 方法輸出檔案。
第八步:關閉流
//1.獲取configuration物件
configuration configuration = freemarkerconfig.getconfiguration();
//2.載入模板物件
template template = configuration.gettemplate("item.ftl");//此處自動從指定路徑下尋找
//3.建立乙個模板使用的資料集
map datamodel=new hashmap<>();
//4.載入一些資料
datamodel.put("goods", goods);
//5.建立乙個 writer 物件,一般建立一 filewriter 物件,指定生成的檔名
writer out=new filewriter(pagedir+goodsid+".html");
//6.呼叫模板物件的 process 方法輸出檔案
template.process(datamodel, out);
//7.關閉流
out.close();
5、可以在模板上使用指令在實現 MYSQL使用筆記(1)
建立使用者 使用者名稱 dn puser 密碼 dn p1347 insert into mysql.user host,user,password values localhost dn puser password dn p1347 建立資料庫 分配資料庫許可權 create database ...
nanomsg使用筆記 1
目前大致的使用情況是使用pollfd,begin nn rep no nn push no nn pub can out nn req can out nn survey can in can out 但是如果沒有survey就去recv,會報錯efsm.使用nn errno和nn strerror...
linux 使用筆記1
zox s code life 人生就是不停的戰鬥!命令 su 2.新增sudo檔案的寫許可權,命令是 chmod u w etc sudoers 3.編輯sudoers檔案 vi etc sudoers 找到這行 root all all all,在他下面新增 all all all 這裡的 是你...