FreeMarker在eclipse中的入門例子

剛接觸 FreeMarker時,只是簡單的瞭解 FreeMarker的一些概念及工做原理,至於如何使用 FreeMarker還不是很是清楚。隨着學習的深刻,才漸漸對 FreeMarker有了更深刻的理解。本文將從基礎應用着手,以 eclipse開發環境爲主,分享一個 FreeMarker用例的開發經驗。

1、在eclipse中建立FreeMarker模板
FreeMarker中模板的概念就是:包含一些由${…}包圍的特殊代碼的文件。這些特殊代碼是FreeMaker指令。
FreeMarker 模板以ftl後綴命名 如本文所示的:
user.ftl
${user.userName}
${user.userPassword}html

2、在eclipse中建立FreeMarker數據模型
FreeMarker數據模型:存在於計算機內存中的一種結構,由開發人員建立,向模板提供信息。
注意:FreeMarker數據模型不是文本文件。FreeMarker的數據模型是樹狀結構的。
如本文所示的:
User.java
  public class User{
 private userName;
 private userPassword;
 
    …(省略getter setter方法) 
}
User對象的樹狀模型如:
(root)
  |+-user
    |+-userName=「張三」
|+-userPassword=「123」
 要訪問user對象的userName屬性,能夠經過點操做符號如:user.userNamejava

3、在eclipse中填充FreeMarker數據模型
FreeMarker的根對象使用Map創建的。將建立好的User對象已鍵-值對得形式封裝到Map中如:
 Map<?,?> root=new HashMap<?,?>();
 root.put(「user」,user);web

  至此,咱們在eclipse中已經完成了大部分的前期準備工做。
FreeMarker工做原理中講到: 數據+模型=輸出,那麼咱們該如何得到想要的結果呢。
也許你已經想到了,建立FreeMarker的模板引擎,解析模板。步驟以下:
1.建立和配置Configuration對象,Configuration對象實例負責管理FreeMarker模板的路徑加載及模板的建立和緩存。一般應用程序的生命週期中只會建立一個Configuration實例。
Configuration config=new Configuration();
config.setDirectoryForTemplateLoading(new File(「templates」));
config.setObjectWrapper(new DefaultObjectWraaper());緩存

2.獲取模板實例,即經過Configuration實例獲取Template實例,調用getTemplate()方法。
Template template=config.getTemplate(templateName);app

3.合併數據模型和模板
經過調用Template實例的process()方法合併數據模型和模板,方法接受一個數據模型的根和一個writer做爲參數,將結果輸出到Writer。 爲簡化起見,本例輸出到控制檯
Writer out=new OutputStreamWriter(System.out);
template.process(root , out);
out.flush();
out.close();
好了,經過上面的講解,您已經對FreeMarker的應用有了必定的瞭解。如今開始咱們就來建立屬於本身的Freemarker用例吧
本例的開發環境: Eclipse3.2+MyEclipse6.0+JDK5.0+FreeMarker
1)在在eclipse中創建一個web工程:freeMakerTest
2)下載FreeMaker工具包,解壓後,在lib目錄下拷貝freemark.jar到freeMakerTest工程下的lib目錄中。
3)在在eclipse中的src目錄下建立以下圖所示的目錄結構:



templates文件夾存放user.ftl文件。
test/frrmrker/uitl/文件夾下存放Freemarker模板引擎 FreeMarkertUtil.java。
test/client文件夾下存放客戶端測試類 ClientTest.java ,User.java
4)在eclipse中編寫user.ftl文件,FreeMarkertUtil.java, ClientTest.java ,User.javaeclipse

源文件的具體內容需在http://www.oecp.cn/hi/hailang/blog/200下載後查看。工具

但願經過本文,對剛開始或即將開始用eclipse展開FreeMarker旅程的朋友有所幫助。學習

 

本文所提到的下載內容需在http://www.oecp.cn/hi/hailang/blog/200下載測試

相關文章
相關標籤/搜索