一,讲解一

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自定义标签(二十一)的更多相关文章

  1. freemarker自定义标签报错(二)

    freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Unexpected end of file reached. at freemarker ...

  2. freemarker自定义标签(二)

    freemarker自定义标签 1.自定义标签 通过自定义标签,写一个重复指定字符串 2.实现源码 <html> <head> <meta http-equiv=&quo ...

  3. OneBlog开源博客-详细介绍如何实现freemarker自定义标签

    前言 OneBlog中使用到了springboot + freemarker的技术,同时项目里多个controller中都需要查询一个公有的数据集合,一般做法是直接在每个controller的方法中通 ...

  4. freemarker自定义标签报错(六)

    freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Encountered "\"\u4f60\u597d\uff01\& ...

  5. freemarker自定义标签报错(五)

    freemarker自定义标签 1.错误描述 六月 05, 2014 11:40:49 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严 ...

  6. freemarker自定义标签报错(四)

    freemarker自定义标签 1.错误描述 六月 05, 2014 11:31:35 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严 ...

  7. freemarker自定义标签(一)

    freemarker自定义标签 1.自定义标签说明 宏变量存储模板片段可以被用作自定义指令macro 2.示例说明 <html> <head> <meta http-eq ...

  8. freemarker自定义标签报错(三)

    freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Encountered " " at line 14, column ...

  9. freemarker自定义标签报错(一)

    freemarker自定义标签 1.错误描述 freemarker.core.ParseException: Token manager error: freemarker.core.TokenMgr ...

随机推荐

  1. 洛谷3月月赛 R1 Step! ZERO to ONE

    洛谷3月月赛 R1 Step! ZERO to ONE 普及组难度 290.25/310滚粗 t1 10分的日语翻译题....太难了不会... t2 真·普及组.略 注意长为1的情况 #include ...

  2. Azure Automation (5) 调整Azure SQL Database DTU

    <Windows Azure Platform 系列文章目录> 之前有客户提了需求,在9点以后,把Azure SQL Database DTU提高 在凌晨,把Azure SQL Datab ...

  3. market1501的学习,跟着苏同学的博客学习

    先看看官方文档:然后附上苏的博客链接http://bigbrothersue.com/index.php/2017/12/20/person-re-id/ The Market-1501 datase ...

  4. 游戏2048源代码 - C语言控制台界面版

    一.游戏介绍 <2048>是最近比较流行的一款数字游戏.原版2048首先在github上发布,原作者是Gabriele Cirulli.它是基于<1024>和<小3传奇& ...

  5. 读书共享 Primer Plus C-part11

    第十四章结构和其他数据形式 关于fread以及fwrite fread(char* buff,int size,int count,FILE* fp) fwrite(char* buff,int si ...

  6. CSS预处理器之Less详解

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. CSS 预处理器 为什么要有 CSS 预处理器 CSS基本上是设计师的工 ...

  7. tpframe框架之slide模块的使用

    最新版git:https://gitee.com/37duman/tpframe 下载插件 点击下载slide插件 安装插件 把下载下来的插件解压后放置在addon文件夹 登录后台,点击插件管理 点击 ...

  8. vim操作备忘录

    vim操作备忘录 vim 备忘录 vim的书籍虽然看不不少,可是老是容易忘记,主要是自己操作总结过少,这个博客就主要用来记录一些比较常见的术语和操作,以防止自己再次忘记. <leader> ...

  9. include指令和include动作

  10. XP环境下的网络证书问题

    项目过程中,由于是收银系统需要从服务器获取支付二维码,会产生SSL连接的问题,在win7.win10上都没有问题,放到WIN XP上出现了The underlying connection was c ...