freemarker常用总结(8)

2019-04-22 21:38

<@border>The bordered text 输出结果:

The bordered text ? <#nested>指令可以被多次调用,例如: <#macro do_thrice> <#nested> <#nested> <#nested> <@do_thrice> Anything. 输出结果: Anything. Anything. Anything. ? 嵌套内容可以是有效的FTL,下面是一个有些复杂的例子: <@border> <@do_thrice> <@greet person=\ 输出结果:

<#local y = \ <#list 1..count as x> ${y} ${count}/${x}: <#nested> <@repeat count=3>${y?default(\${count?default(\输出结果: test 3/1: ? ? ? test 3/2: ? ? ? test 3/3: ? ? ? ?

? 在宏定义中使用循环变量

? 用户定义指令可以有循环变量,通常用于重复嵌套内容,基本用法是:作为nested指令的参数传递循环变量的实际值,而在调用用户定义指令时,在<@…>开始标记的参数后面指定循环变量的名字 ? 例子: <#macro repeat count> <#list 1..count as x> <#nested x, x/2, x==count> <@repeat count=4 ; c, halfc, last> ${c}. ${halfc}<#if last> Last! 输出结果: 1. 0.5 2. 1 3. 1.5 4. 2 Last! ? 指定的循环变量的数目和用户定义指令开始标记指定的不同不会有问题

? 调用时少指定循环变量,则多指定的值不可见 ? 调用时多指定循环变量,多余的循环变量不会被创建

4.11关于在FreeMarker中使用Struts2标签

?FreeMarker作为视图组件是由Servlet负责加载该模板,并使用数据模型填充该模板,并且将填充后的标准HTML响应输出给浏览者.

? 在Struts2框架的支持下,Struts2框架充当了之前的Servlet角色.

? 为了使所有的用户请求都经过Struts2框架处理,我们将所有的FreeMarker模板放在WEB-INF/ftl路径下.

? 放在WEB-INF/路径下可以提供更好的安全性,因为Web容器会保证浏览者无法访问到WEB-INF/路径下的资源. 使用struts2标签输出:

<@s.property value=\2.访问HttpServletRequest中的参数

<#if Parameter.parameter?exists>

${Parameter.parameter}


freemarker常用总结(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: