席卷、模板和数据模型的急需Free马克(Mark)er生成输出(如首先次呈现的HTML):

Apache
Free马克(Mark)er模板引擎:Java库来扭转文书输出(HTML网页,电子邮件,配置文件,源代码,等等)基于模板和转变的多寡。模板都写在Free马克(Mark)er模板语言(FTL),那是一个简便的、专门的言语(不是一个成熟的编程语言(比如PHP)。你要预备的数码显示在一个确实的编程语言,就像数据库查询和做工作的计量问题,然后模板已经准备好的多少的体现。模板中你关心如何显示数据,和外部的模板你体贴咋样数据。

 

 

模板存储在Web服务器上,常常就像静态HTML页面。但每当有人访问这些页面,Free马克er到场,将纯HTML的模板动态替换${...}s与时尚的情节,并将结果发送到访问者的Web浏览器。所以访问者的浏览器将接收类似HTML(即首先个例证。纯HTML没有Free马克(Mark)er指令),它不会发现到Free马克er在服务器上行使。(当然,模板文件存储在Web服务器上从未有过改变,替换只现身在Web服务器的响应)。

 

Free马克er多少个优点:

 

< html >
<头>
<标题>欢迎! < /名称>
< / >头
<身体>
<标题>欢迎$ { user } ! < / h1 >
< p >我们的最新产品:
< a href = " $ { latestProduct.url } " > $ { latestProduct.name } < / > !
< /身体>
< / html >

预备的全部数据称为数据模型的模版。模板作者而言,数据模型是一个树状结构(如硬盘上的公文夹和文书),而在这种状态下,可以可视化为:

注意:

这种措施一般被称呼MVC(模型-视图-控制器)形式,并为动态网页特别受欢迎。它助长分离网页设计师(HTML作者)从开发者(Java程序员经常)。在模板设计者不相会临复杂的逻辑,可以变动页面的外观无需程序员修改或再度编译代码。

< html >
<头>
<标题>欢迎! < /名称>
< / >头
<身体>
<标题>欢迎John Doe ! < / h1 >
< p >我们的最新产品:
< a href = "产品/ greenmouse。html " >绿色鼠标< / > !
< /身体>
< / html >

 

模板+ 数据模型的= 输出

图片 1

  • 无敌的模板语言:条件块、迭代、作业、字符串和算术运算和格式化,宏和函数,包括此外模板,逃避在默认情状下(可选),和重重更多

  • 多用途和轻量级:零看重,任何输出格式,可以从任何地方加载模板(可插入),许多配备选项

  • 国际化/
    localization-aware:语言环境敏感的数额和日期/时间格式,局部模板的生成。

  • XML处理效率:删除XML
    DOM-s到数据模型的遍历,甚至以宣称的章程处理它们

  • 通用的数据模型的:Java对象显露在模板变量通过可插入适配器的树,这决定模板咋样看待他们。

早些时候,你从那个数据模型的选料值,userlatestProduct.name表明式。如若我们后续类比数据模型就像一个文件系统,然后“(根)”,latestProduct相应的目录(文件夹),user,urlname文本的目录。

 

但用户的称号(下面的“约翰(John)Doe”)取决于登录的用户是什么人,和新星的出品音信应该来自一个数据库。因为这些数额变化,你不可能无法采纳静态HTML。相反,您可以运用一个模板所需的输出。模板是千篇一律的静态HTML,除了它富含部分限令Free马克(Mark)er使其动态:

 

以上只是一个可视化;数据模型的文本格式,它从Java对象。对于Java程序员,根或者是一个Java对象getUser()getLatestProduct()措施,或者一个JavaMap"user""latestProducts"钥匙。同样的,latestProduct或许是一个Java对象getUrl()getName()方法。

留神,模板不包含编程逻辑来找出当下的旁人是何人,或查询数据库得到最新的成品。要呈现的多少准备Free马克(Mark)er外,经常经过一些写在局部“真实”编程语言(如Java)。模板作者不必知道那么些值是什么样总括的。事实上,这个值的盘算方法可以完全改变了模版可以维持完全相同,而且,完全改观了页面的外观不会遭遇其他事物,但模板。表示逻辑与作业逻辑的分开能够专门有用,当模板作者(设计师)和程序员都是例外的私家,但也有助于管理应用程序的复杂,要是他们是同一个人。保持模板集中在陈述问题(视觉设计,布局和格式)是一个重要的得力运用像Free马克er模板引擎。

(根)
|
+ -用户=“大乔”
|
+ - latestProduct
|
+ - url =“产品/ greenmouse.html”
|
+ - name =“绿色鼠标”
注意:

Free马克(Mark)er最初成立时生成HTML页面在MVC
web应用程序框架,它不是绑定到servlet或东西的HTML或以上。它的非web应用程序环境中使用。

若果你在一个网站需要一个HTML页面,类似于:

 

 

相关文章

网站地图xml地图