Freemarker中如何遍历List摘要:在Freemarker应用中经常会遍历List获取需要的数据,并对需要的数据进行排序加工后呈现给用户。那么在Freemarker中如何遍历List,并对List中数据进行适当的排序呢?

通过下文的介绍,相信您一定会找到答案。

一、 Freemarker中list指令简单介绍

要想在Freemarker中遍历list,必须通过使用list指令,即…#list>

sequence是集合(collection)的表达式,item是循环变量的名字,不能是表达式。

当在遍历sequence时,会将遍历变量的值保存到item中。

举个例子说明吧:

#list>

userList中封装了很多个User对象,我们在遍历userList时候,会将遍历的User对象的值,保存到上述的user变量中。那么在取值时,我们可以通过${user.userName }来获取User对象的userName属性值。

List指令还隐含了两个循环变量:

item_index:当前迭代项在所有迭代项中的位置,是数字值。

item_has_next:用于判断当前迭代项是否是所有迭代项中的最后一项。

注意:在使用上述两个循环变量时,一定要将item换成你自己定义的循环变量名,item其实就是前缀罢了。

例如,如果你使用..#list>定义,那么就要使用l_index,l_has_next。

在循环过程中,如果您想跳出循环,那么可以使用结合break指令,即来完成。

二、 Freemarker中对List进行排序

通常我们的排序操作都是通过DAO层来实现的,如果我们想随时更改我们的排序,那么就必须修改我们的DAO层代码,确实不方便。但Freemarker为我们提供了这样的排序方法,解决了这个问题。

1. sort升序排序函数

sort对序列(sequence)进行排序,要求序列中的变量必须是:字符串(按首字母排序),数字,日期值。

…#list>

2. sort_by函数

sort_by有一个参数,该参数用于指定想要排序的子变量,排序是按照变量对应的值进行排序,如:

…#list>

age是User对象的属性,排序是按age的值进行的。

3. reverse降序排序函数

…#list>

reverse使用同sort相同。reverse还可以同sort_by一起使用

如:想让用户按年龄降序排序,那么可以这个样写…#list>

三、 Freemarker如何遍历List实例应用

通过上面的介绍,相信您已经对Freemarker如何遍历List有了了解,那么我们就废话少说,开始做一个应用吧。

好了,到这里程序就结束了,您可以运行ClientTest类来查看输出结果了。

引自:http://www.oecp.cn/hi/hailang/blog/358

大小: 30 KB

分享到:

2013-06-18 17:59

浏览 2345

评论

fremaker遍历list_Freemarker中如何遍历List相关推荐

  1. python实现二叉树的重建1 之由前序遍历和中序遍历重建

    前言 此题是关于树的面试题目的常见题型,题目的含义很清晰,这个就不用多说了 解法 关于这道题的解法有很多不同的样式,通用的解法是这样的: 假如现在我们有如下两个遍历的情况 preorder: [1, ...

  2. 通过前序遍历和中序遍历构建二叉树 python实现

    前言 通过前序遍历和中序遍历构建二叉树的原理,主要是找前序遍历根节点在中序遍历中的位置,然后将二叉树而成左子树和右子树,然后依次进行这样的操作,思路还是比较简单的 代码 class Node:def ...

  3. 根据二叉树的前序遍历和中序遍历重建二叉树

    题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...

  4. python实现二叉树遍历(前序遍历、中序遍历、后序遍历)

    python实现二叉树遍历(前序遍历.中序遍历.后序遍历) 在计算机科学中,二叉树是一种树数据结构,其中每个节点最多有两个子节点,称为左子节点和右子节点.使用集合理论概念的递归定义是(非空)二叉树是元 ...

  5. 前序遍历与中序遍历确定后序遍历

    1003. 二叉树后序遍历     Total: 137 Accepted: 80                 Time Limit: 3sec    Memory Limit:256MB Des ...

  6. 二叉树的前序遍历,中序遍历,后序遍历学习 (原)

    经验: 不要死记各个遍历节点的位置,将一个复杂的二叉树当作一个个小的二叉树学习前序遍历,中序遍历,后序遍历会更容易理解 转载于:https://www.cnblogs.com/gyrgyr/p/962 ...

  7. 已知二叉树的前序遍历、中序遍历或者中序遍历、后序遍历求二叉树结构的算法

    二叉树中的前序遍历是先访问根结点,再访问左子树,右子树. 中序遍历是先访问左子树,再是根结点,最后是右子树. 后序遍历是先访问左子树,再是右子树,最后是根结点. 算法思路是先根据前序遍历的第一个结点或 ...

  8. PAT甲级1138 Postorder Traversal:[C++题解]前序遍历和中序遍历建树

    文章目录 题目分析 题目链接 题目分析 做过前面几道题,发现这道题就是一道模板题,递归建树即可. 还是使用笔者熟悉的hash表来找根,进行优化. 请移步至笔者的另一篇文章:PAT甲级1020 Tree ...

  9. 树的前序遍历、中序遍历、后序遍历详解

    1.前序遍历 对于当前节点,先输出该节点,然后输出他的左孩子,最后输出他的右孩子.以上图为例,递归的过程如下: (1):输出 1,接着左孩子: (2):输出 2,接着左孩子: (3):输出 4,左孩子 ...

最新文章

  1. 算法工程师在岗3年小结!
  2. python和c哪个适合入门-Python和C先学哪个好?
  3. 使用freemarker生成java文件(其他文件也可以)
  4. 03.native方法(JNI)
  5. C++ 多线程教程及实现方法
  6. 【CCF】201412-1门禁系统
  7. 1112个人赛,最长回文串常见算法讨论
  8. (转)VmWare下安装CentOS6图文安装教程
  9. 英语四级考试计算机游戏,2017年6月英语四级作文练习:大学生玩游戏
  10. 20169219《linux内核原理与分析》第七周作业
  11. redis info信息注解
  12. 【项目|ICT】决赛记录
  13. SQL Server 2008 R2的完全卸载
  14. MC9S12XS128 事件处理
  15. 通过路由远程计算机重启,路由器如何重启 三种重启路由器的方法【步骤教程】...
  16. C中 stdarg.h
  17. flowable审批流+集成springboot
  18. 计算机视觉-OpenCV(七)
  19. Mathorcup数学建模竞赛第六届-【妈妈杯】B题:车位分布的优化设计与评价(附一等奖获奖论文和matlab代码)
  20. SpringBoot整合JavaMail通过阿里云企业邮箱发送邮件

热门文章

  1. 【NVMe2.0b 9】控制器初始化过程
  2. 英文歌曲:cross every river( 穿过每一条河 )
  3. 第七届团队程序设计天梯赛 题目解析讲解
  4. 学习编程比学开车要简单
  5. value too long for type character varying(32)
  6. 入职地府后我成了人生赢家_129、新鬼入职|入职地府后我成了人生赢家|入职地府后我成了人生赢家章节阅读-龙族小说网...
  7. 「Hortic Res」APETALA2的同源物CaFFN可调节辣椒的开花时间
  8. SSD接口SATA/PCIE/mSATA/M.2分析
  9. 简洁大气资源站emlog模板
  10. 英语大师们讲解英语学习方法