freemarker自定义标签(二十一)
一,讲解一
1、自定义标签说明
宏变量存储模板片段可以被用作自定义指令macro
2、示例说明
<html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>freemarker自定义标签</title> </head> <body> <#--freemarker自定义标签--> <#macro write> repeat("张三丰",3) </#macro> <@write/> </body> </html>
3、示例结果
<html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>freemarker自定义标签</title> </head> <body> repeat("张三丰",3) </body> </html>
二,讲解二
1、自定义标签
通过自定义标签,写一个重复指定字符串
2、实现源码
<html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>freemarker自定义标签</title> </head> <body> <#--freemarker自定义标签--> <#macro repeat nums=40 name="你好"> <#list 1..nums as n> <h1>张三,${name}${n}</h1> </#list> </#macro> <@repeat/> </body> </html>
3、实现结果
<html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>freemarker自定义标签</title> </head> <body> <h1>张三,你好1</h1> <h1>张三,你好2</h1> <h1>张三,你好3</h1> <h1>张三,你好4</h1> <h1>张三,你好5</h1> <h1>张三,你好6</h1> <h1>张三,你好7</h1> <h1>张三,你好8</h1> <h1>张三,你好9</h1> <h1>张三,你好10</h1> <h1>张三,你好11</h1> <h1>张三,你好12</h1> <h1>张三,你好13</h1> <h1>张三,你好14</h1> <h1>张三,你好15</h1> <h1>张三,你好16</h1> <h1>张三,你好17</h1> <h1>张三,你好18</h1> <h1>张三,你好19</h1> <h1>张三,你好20</h1> <h1>张三,你好21</h1> <h1>张三,你好22</h1> <h1>张三,你好23</h1> <h1>张三,你好24</h1> <h1>张三,你好25</h1> <h1>张三,你好26</h1> <h1>张三,你好27</h1> <h1>张三,你好28</h1> <h1>张三,你好29</h1> <h1>张三,你好30</h1> <h1>张三,你好31</h1> <h1>张三,你好32</h1> <h1>张三,你好33</h1> <h1>张三,你好34</h1> <h1>张三,你好35</h1> <h1>张三,你好36</h1> <h1>张三,你好37</h1> <h1>张三,你好38</h1> <h1>张三,你好39</h1> <h1>张三,你好40</h1> </body> </html>
三,讲解三nested指令
1、nested指令
是可选的,可以在<#macro>和</#macro>之间使用在任何位置和任意次数
2、示例说明
<#macro tag> <#nested/> </#macro> <@tag> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> </ul> </@tag>
3、运行结果
<ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> </ul>
freemarker自定义标签(二十一)的更多相关文章
- freemarker自定义标签报错(二)
freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Unexpected end of file reached. at freemarker ...
- freemarker自定义标签(二)
freemarker自定义标签 1.自定义标签 通过自定义标签,写一个重复指定字符串 2.实现源码 <html> <head> <meta http-equiv=&quo ...
- OneBlog开源博客-详细介绍如何实现freemarker自定义标签
前言 OneBlog中使用到了springboot + freemarker的技术,同时项目里多个controller中都需要查询一个公有的数据集合,一般做法是直接在每个controller的方法中通 ...
- freemarker自定义标签报错(六)
freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Encountered "\"\u4f60\u597d\uff01\& ...
- freemarker自定义标签报错(五)
freemarker自定义标签 1.错误描述 六月 05, 2014 11:40:49 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严 ...
- freemarker自定义标签报错(四)
freemarker自定义标签 1.错误描述 六月 05, 2014 11:31:35 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严 ...
- freemarker自定义标签(一)
freemarker自定义标签 1.自定义标签说明 宏变量存储模板片段可以被用作自定义指令macro 2.示例说明 <html> <head> <meta http-eq ...
- freemarker自定义标签报错(三)
freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Encountered " " at line 14, column ...
- freemarker自定义标签报错(一)
freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Token manager error: freemarker.core.TokenMgr ...
随机推荐
- 51NOD 1705 七星剑 [DP 期望的线性性质]
传送门 题意: 七颗星,第$i$课星用第$j$个宝石有$p[i][j]$的概率成功,失败将为$g[i][j]$颗星: 第$j$个宝石化费$c[j]$ 求最小期望化费 $MD$本来自己思路挺对的看了半天 ...
- C#实现航班查询及预订
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...
- php与web页面交互(二)
一.获取表单数据 1.1 使用POST()方法提交表单 ---POST()方法可以没有限制地传递数据到服务器,所提交的数据在后台传输,用户在浏览器端是看不到这一过程的,安全性高,适用于发送保密数据和 ...
- php+redis 学习 五 消息推送
<?php header('content-type:text/html;chaeset=utf-8'); /** * redis实战 * * 发布 * * @example php publi ...
- python学习:匿名函数
Python 函数 lambda 匿名函数 -lambda 函数是一种快速定义单行的最小函数,可以用在任何需要函数的地方. def fun(x,y): return x*y fu ...
- (转)CocoaPods:管理Objective-c 程序中各种第三方开源库关联
在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中. 但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦.有没有什么办法可以简化对第三方库的 ...
- easyui datagrid 右边框被隐藏
问题前: 如下图: 解决思路: 待文档加载完成后再执行dategrid函数 $(function () { $("#tt").datagrid({ //....... }); }) ...
- [原创]Oracle 12c的备份和恢复策略
Oracle 12c的备份和恢复策略(RMAN备份[开启归档/控制文件/数据文件/归档日志]): 备份策略: * 每半年做一个数据库的全备份(包括所有的数据和只读表空间) * 每周做一次零级备份 * ...
- Java语言的分支
JavaSE:(标准版)是java基础,早期叫j2se,2005改名叫JavaSE(必须). JavaME:(移动版)适合移动端的开发.j2me,2005改名叫java ME(不学) JavaEE:( ...
- 使用MyBatis集成阿里巴巴druid连接池(不使用spring)
在工作中发现mybatis默认的连接池POOLED,运行时间长了会报莫名其妙的连接失败错误.因此采用阿里巴巴的Druid数据源(码云链接 ,中文文档链接). mybatis更多数据源参考博客链接 . ...