對Freemarker的理解

1. freeMaker :
    1. 百度解釋:
        1. FreeMarker是一款模板引擎: 即一種基於模板和要改變的數據,
        並用來生成輸出文本(HTML網頁、電子郵件、配置文件、源代碼等)的通用工具。    
        它不是面向最終用戶的,而是一個Java類庫,是一款程序員可以嵌入他們所開發產品的組件。
        
        2. FreeMarker是免費的,基於Apache許可證2.0版本發佈。其模板編寫爲FreeMarker 
        Template Language(FTL),屬於簡單、專用的語言。需要準備數據在真實編程語言中來顯示,
        比如數據庫查詢和業務運算,    之後模板顯示已經準備好的數據。在模板中,主要用於如何展現數據,
            而在模板之外注意於要展示什麼數據
            
    2. 個人理解: 
        1. 與jsp有相似之處: jsp是將 java代碼和html糅合到一個文件中,歸根結底是將 數據 和 形式的糅合,
        或者說是將 模型model 與 視圖view 的整合, 基於這一點,freeMaker 與jsp有相似之處, freeMaker也是
        將模板temeplate 寫好,然後 模板對象獲得數據,完成頁面創建;
        2 .然而 jsp 與 freeMaker 又有很大不同:
            jsp編寫完成以後,經過編譯時利用 jsp轉servlet 的模板引擎,
        將jsp頁面轉換成了一個 Servlet類,這樣jsp本質上來說就是一個Servlet類,只不過是被封裝過的Servlet,
        我們用它來寫html時基本能夠做到 "所見即所得" ,而真正的數據整合是在 這個Servlet類中完成的,並且
        在整合數據的同時,將html部分和數據部分 通過響應回寫到客戶端;在服務器端沒有生產 html頁面;
            freeMaker 是通過編寫一個 模板類文件 .ftl文件 ,這個文件本身與jsp頁面非常類似,但是不同的是,
        這個頁面會通過, 一個配置對象 Configuation 的讀取操作,生成一個 Template對象,然後就是最最重要的:
        這個模板對象會接收 model數據 然後生成一個html靜態頁面,這一點態厲害了,一旦生成了這個靜態頁面,在
        以後被訪問時,它的效率明顯比jsp 高了,(原因就是html比jsp 效率高的原因);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章