侧边栏壁纸
  • 累计撰写 793 篇文章
  • 累计创建 1 个标签
  • 累计收到 1 条评论
标签搜索

目 录CONTENT

文章目录

freeMarker

Dettan
2021-04-10 / 0 评论 / 0 点赞 / 132 阅读 / 780 字
温馨提示:
本文最后更新于 2022-07-23,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。


什么是 FreeMarker?
FreeMarker 是一款 模板引擎 : 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。 模板编写为FreeMarker Template Language (FTL)。它是简单的,专用的语言, 不是 像PHP那样成熟的编程语言。 那就意味着要准备数据在真实编程语言中来显示,比如数据库查询和业务运算, 之后模板显示已经准备好的数据。在模板中,你可以专注于如何展现数据, 而在模板之外可以专注于要展示什么数据。 这种方式通常被称为 MVC (模型 视图 控制器) 模式 ,对于动态网页来说,是一种特别流行的模式。 它帮助从开发人员(Java 程序员)中分离出网页设计师(HTML设计师)。设计师无需面对模板中的复杂逻辑, 在没有程序员来修改或重新编译代码时,也可以修改页面的样式。 而FreeMarker最初的设计,是被用来在MVC模式的Web开发框架中生成HTML页面的,它没有被绑定到 Servlet或HTML或任意Web相关的东西上。它也可以用于非Web应用环境中。 FreeMarker 是 免费的 , 基于Apache许可证2.0版本发布。 如果你发现 任何错误 (包括 语法错误, 错别字, 排版错误) 或者是在文档中找到 误导或混淆 ,或有其他建议,请联系原作者!
http://freemarker.foofun.cn/
map
取值
map.name
map[name]
<#assign index=1>
<#assign interval = (1-1/block.getChildren()?size)*20>
从string创建template
Template template = new Template("lala", "", cfg);

默认值
实际值!默认值
数组大小判断
<#if (fields?size>0) >
</#if>

空白处理
下面标签加载输出的行尾就能生效

<#t> (用于修剪/忽略)忽略所有前导和尾随空白。去掉左右空白和回车换行

<#lt>(用于左修剪/忽略)忽略所有前导空白。去掉左边空白和回车换行

<#rt>(用于右修剪/忽略)忽略所有尾随空白。去掉右边空白和回车换行

<#nt>取消上面的效果。剥离空白:默认的情况下剥离空白是开启的,程序员可以留着不管(建议这样做)。
<#if frame?size = 2>
      <span style="<#t>
			">${frame[0]}</span><#t>
<#else>
      ${frame[0]}<#t>
</#if>

输出 
<span style=""></span><#t>
0

评论区