语法:<#if></#if>后台传送List,前台html页面中获取该list并显示:

<#if userList?exists>
<#list userListas item>
<tr>
<td>${item_index?if_exists+1}</td>//获取循环下标值,默认是从0开始的.
<td>${item.userName?if_exists}</td>
</td>
</#list>
</#if>

在模版页里用list展示列表内容,非常方便,最常用的用法 :

1.假设有bean类users,users有name、age等属性,List<users> users为后台数据,

<#list users as user>
      <span>${user.name}</span>
      <span>${user.age}</span></br>
</#list>

2.上例中的users处也可以是用现场定义的,如
<#list [1,2,3,4] as index>
     <span>${index}</span>
</#list>
结果显示是:1234

3.如果只是想要计数,也可以这样写
<#list 1..4 as index>
   <span>${index}</span>
</#list>
结果和上面是一样的,也是1234

如果需要显示当前循环到第几项,可以这样写
<#list ["hello","welcome","hi"] as word>
    <span>${word_index+1},${word}</span></br>
</#list>
as 后面的那个变量,加上_index,就可以表示当前循环到第几项
结果是:
1,hello
2,welcome
3,hi

有时候,最后一项在显示的时候可能要做特殊处理,怎么判断最后一项?
<#list ["hello","welcome","hi"] as word>
    <span>${word}</span><#if word_has_next>,</#if></#list>
as 后面的那个变量,加上_has_next,就可以判断是否最后一项
结果是:
hello,welcome,hi

如果想在循环中判断到某一项时退出,可以这样做
<#list users as user>
   <span>${user.name}</span>
   <#if user.name == "pxx"><#break></#break>
</#list>

FreeMark的list应用的更多相关文章

  1. Freemark笔记

    Freemark基本语法知识 Freemark 常用代码总结1 Freemark 常用代码总结2 笔记,吐槽一下freemark的蛋疼语法. 1.elseif 中间不能有空格 2.三目运算符 语法和j ...

  2. Freemark基本语法知识(转)

    FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1,文本:直接输出的部分 2,注释:<#-- ... -->格式部分,不会输 ...

  3. spring mvc中使用freemark的一点心得

    参考文档: FreeMarker标签与使用 连接http://blog.csdn.net/nengyu/article/details/6829244 freemarker学习笔记--指令参考: ht ...

  4. FreeMark学习(一)

    FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 虽然FreeMark ...

  5. freemark页面中获取list循环中的counter

    如何在freemark页面中获取到当前list循环的counter 直接上代码 <#list lists as x> <#assign j=x?counter> ${j} // ...

  6. 放弃FreeMark?

    JAVA项目FreeMark 生产静态页面   a)    弊端                 i.          依赖后台工程师拼装页面,不利于前端.后台工作完全解耦. ii.         ...

  7. freemark标签从后台接过来数据Boolean在前台还是Boolean输出(四)

    FREEMARK标签中输出BOOLEAN值 private boolean showHeader=true; public boolean getShowHeader(){ return this.s ...

  8. springboot+mybatis+freemark+oauth开发环境搭建

    一.创建springboot工程 1.环境介绍: a:jdk版本:1.7 b:Springboot版本:1.5.6(使用1.5.9的版本整合mybatis会报错:java.lang.NoClassDe ...

  9. freemark、jsp&css

    **************************************************************freemark相关**************************** ...

  10. freemark生成静态网页乱码问题

    输出流问题:修改Writer如下: OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(dir), &quo ...

随机推荐

  1. Sql数据表中的关系

  2. python基础-集合小结

    Python-基础-集合小结 集合 简介 声明 常用操作 成员关系 新增删除 集合间操作 其他 补充 集合 简介 python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和 ...

  3. EPEL 安装源

    EPEL 安装源 EPEL 是 Extra Packages for Enterprise Linux 的缩写(EPEL),是用于 Fedora-based Red Hat Enterprise Li ...

  4. 编程风格---代码中doxygen方式的注释写法

    代码中doxygen方式的注释写法: 1. 模块定义(单独显示一页) /* * @defgroup 模块名 模块的说明文字 * @{ */ … 定义的内容 … /** @} */ // 模块结尾 2. ...

  5. 创建外网 ext

    虽然外部网络是已经存在的网络,但我们还是需要在 Neutron 中定义外部网络的对象,这样 router 才知道如何将租户网络和外部网络连接起来. 上一节我们已经为创建外部网络配置了ML2,本节将通过 ...

  6. Codevs 1315 摆花

    1315 摆花 2012年NOIP全国联赛普及组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 小明的花店新开张,为了吸引顾客,他 ...

  7. 【HDOJ5972】Regular Number(Bitset,ShiftAnd)

    题意:给你N位数,接下来有N行,第i行先输入n,表示这个数的第i 位上可以在接下来的n个数中挑选,然后i 行再输n个数. 然后输入需要匹配的母串,让你输出母串中有多少个可行的N位子串. n<=1 ...

  8. [LeetCode] Unique Binary Search Trees II dfs 深度搜索

    Given n, generate all structurally unique BST's (binary search trees) that store values 1...n. For e ...

  9. 【传输文件】文件传输协议FTP、SFTP和SCP

    网络通信协议分层 应用层: HTTP(Hypertext Transfer Protocol 超文本传输协议,显示网页) DNS(Domain Name System) FTP(File Transf ...

  10. 桶排序Bucket sort(转)

    补充说明三点 1,桶排序是稳定的 2,桶排序是常见排序里最快的一种,比快排还要快…大多数情况下 3,桶排序非常快,但是同时也非常耗空间,基本上是最耗空间的一种排序算法 我自己的理解哈,可能与网上说的有 ...