JAVA Freemarker(7)--macro、nested與function

來源:互聯網
上載者:User

1、基本文法:

2、macro使用

3、宏嵌套nested 的使用
模板頁:

<#assign basePath = request.contextPath /><#macro htmlHead title charset="utf-8" lang="zh-CN"> <html> <head>    <meta http-equiv="Content-Type" content="text/html; charset=${charset}" />    <meta http-equiv="Content-Language" content="${lang}"/>    <title>${title}</title>    <#nested> </head> </#macro> <#macro htmlBody> <body>    <#nested> </body> </html> </#macro>

調用模板的頁:

<#include "/ftl/layout/layout1.ftl"/><@htmlHead title="FreeMarker宏測試 ">    <script src="${basePath}/js/jquery1.2.6.pack.js" type="text/javascript"></script>    <script type="text/javascript">        function test(){            var va = $("#test1").val();            alert(va);        }       </script></@htmlHead><@htmlBody>    哈哈哈<br>    <input id="test1" type="text" name="name1" value="我的祖國"><br>    <a href="#" onclick="test()">測試jquery</a></@htmlBody>

4、nested指令
1)nested指令
是可選的,可以在<#macro>和

<#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>  

5、function, return

<#function avg nums...>     <#local sum = 0>     <#list nums as num>       <#local sum = sum + num>     </#list>     <#if nums?size != 0>       <#return sum / nums?size>     </#if>   </#function>   ${avg(10, 20)}   ${avg(10, 20, 30, 40)}   ${avg()!"N/A"}   

—————————————————————————————————————————————————– java架構師項目實戰,高並發叢集分布式,大資料高可用視頻教程,共760G

下載地址:

https://item.taobao.com/item.htm?id=555888526201

01.進階架構師四十二個階段高
02.Java進階系統培訓架構課程148課時
03.Java進階互連網架構師課程
04.Java互連網架構Netty、Nio、Mina等-視頻教程
05.Java進階架構設計2016整理-視頻教程
06.架構師基礎、進階片
07.Java架構師必修linux營運系列課程
08.Java進階系統培訓架構課程116課時
+
hadoop系列教程,java設計模式與資料結構, Spring Cloud微服務, SpringBoot入門

—————————————————————————————————————————————————–

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.