freemarker:简介

2019-10-23 作者:www.243.net   |   浏览(79)

freemarker:简介。Apache Free马克尔模板引擎:Java库来扭转文书输出(HTML网页,电子邮件,配置文件,源代码,等等)基于模板和生成的数额。模板都写在Free马克尔模板语言(FTL),那是三个简易的、专门的言语(不是贰个深思熟虑的编制程序语言(比方PHP)。你要筹划的数量浮未来四个实在的编程语言,仿佛数据库查询和做专门的学问的忖度难点,然后模板已经计划好的数额的显得。模板中您珍重怎么样表现数据,和表面包车型地铁模版你关注怎样数据。

 

图片 1

 

这种措施日常被称之为MVC(模型-视图-调整器)方式,并为动态网页极其受迎接。它推向分离网页设计员(HTML小编)从开辟者(Java程序员常常)。在模板设计者不相会对复杂的逻辑,能够变动页面包车型地铁外观不需求技士修改或另行编写翻译代码。

Free马克尔最先创制时生成HTML页面在MVC web应用程序框架,它不是绑定到servlet或东西的HTML或上述。它的非web应用程序意况中动用。

 

若是你在一个网址要求三个HTML页面,相像于:

 

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

但顾客的名目(上边的“JohnDoe”)决意于登陆的客户是哪个人,和新颖的产品音讯应该来自一个数据库。因为那个数额变化,你不能否采纳静态HTML。相反,您能够运用叁个模板所需的输出。模板是同样的静态HTML,除了它含有部分命令Free马克尔使其动态:

 

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

freemarker:简介。模板存款和储蓄在Web服务器上,常常就如静态HTML页面。但每当有人访谈这么些页面,Free马克尔参加,将纯HTML的模板动态替换${...}freemarker:简介。s与风行的源委,并将结果发送到新闻报道工作者的Web浏览器。所以新闻报道工作者的浏览器将采用相似HTML(即首先个例子。纯HTML未有Free马克尔指令),它不会意识到Free马克尔在服务器上应用。(当然,模板文件存款和储蓄在Web服务器上一向不改观,替换只现出在Web服务器的响应)。

留意,模板不带有编程逻辑来寻找近日的别人是哪个人,或查询数据库获得最新的制品。要展现的数目希图Free马克尔外,日常通过有些写在局地“真实”编程语言(如Java)。模板作者不必知道那些值是什么总括的。事实上,这么些值的精兵简政方法能够完全改换了模版可以维持完全相符,并且,完全改观了页面的外观不会遇见其余事物,但模板。表示逻辑与事务逻辑的分手能够特地有用,当模板我(设计员)和程序猿都是例外的村办,但也推动处理应用程序的复杂,假设他们是同一位。保持模板聚焦在陈说难题(视觉设计,布局和格式)是三个根本的可行运用像Free马克尔模板引擎。

预备的漫天多少称为数据模型的模版。模板小编来说,数据模型是一个树状结构(如硬盘上的文本夹和文件),而在此种状态下,能够可视化为:

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

 

注意:

如上只是一个可视化;数据模型的文本格式,它从Java对象。对于Java技师,根也许是多少个Java对象getUser()getLatestProduct()措施,或许四个JavaMap"user""latestProducts"钥匙。同样的,latestProduct唯恐是多个Java对象getUrl()getName()方法。

早些时候,你从那个数据模型的选择值,userlatestProduct.name表明式。假诺大家后续类比数据模型仿佛贰个文件系统,然后“(根)”,latestProduct相应的目录(文件夹),user,urlname文本的目录。

席卷、模板和数据模型的内需FreeMarker生成输出(如首先次体现的HTML):

模板+ 数据模型的= 输出

 

Free马克尔多少个亮点:

  • 强有力的模版语言:条件块、迭代、作业、字符串和算术运算和格式化,宏和函数,包括别的模板,隐藏在暗中同意景况下(可选),和多数越多

  • 多用途和轻量级:零信任,任何输出格式,能够从此外地点加载模板(可插入),大多计划选项

  • 国际化/ localization-aware:语言情形敏感的数目和日期/时间格式,局地模板的变型。

  • XML管理功效:删除XML DOM-s到数据模型的遍历,以至以宣称的方法管理它们

  • 通用的数据模型的:Java对象暴光在模板变量通过可插入适配器的树,那决定模板怎么着对待他们。

 

 

本文由金沙澳门官网网址发布于www.243.net,转载请注明出处:freemarker:简介

关键词: