对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 效率高的原因);

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