freemark实现遍历 list,每行三个
我的做法是先做一个模板,这三个只都是从list里取出来的

在后台将每三个值放到一个map里
List<Map<String, Object>> newsList=new ArrayList<Map<String,Object>>();
String dzbjh=land.getDzbjh();
String str[]=dzbjh.split(";"); for(int i=0;i<str.length-1;i+=3){
Map<String, Object> map=new HashMap<String, Object>();
map.put("xh1", i+1+".");
map.put("point1", str[i]);
if(i+2<str.length-1){
map.put("xh2", i+2+".");
map.put("point2", str[i+1]);
}
if(i+3<str.length-1){
map.put("xh3", i+3+".");
map.put("point3", str[i+2]);
} newsList.add(map);
}
dataMap.put("pointList", newsList);
在ftl里判断,首先定义一个变量,然后就遍历list
<#assign flag=0>
<#list pointList as point>
<w:tr wsp:rsidR="00332520" wsp:rsidRPr="00A324FC" wsp:rsidTr="002F3D9A">
<#assign flag=flag+1>
<w:tc>
<w:tcPr>
<w:tcW w:w="426" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="005E0CA4" wsp:rsidRPr="00A324FC" wsp:rsidRDefault="00507115" wsp:rsidP="00D06A8B">
<w:pPr>
<w:rPr>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:rFonts w:hint="fareast"/>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
<w:t>${point.xh1}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="3119" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="005E0CA4" wsp:rsidRPr="00A324FC" wsp:rsidRDefault="00507115" wsp:rsidP="00D06A8B">
<w:pPr>
<w:rPr>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00F728CF">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
<w:t>${point.point1}</w:t>
</w:r>
</w:p>
</w:tc>
<#if flag lt size>
<#assign flag=flag+1>
<w:tc>
<w:tcPr>
<w:tcW w:w="425" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="005E0CA4" wsp:rsidRPr="00A324FC" wsp:rsidRDefault="00507115" wsp:rsidP="00D06A8B">
<w:pPr>
<w:rPr>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:rFonts w:hint="fareast"/>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
<w:t>${point.xh2}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="3119" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="005E0CA4" wsp:rsidRPr="00A324FC" wsp:rsidRDefault="00507115" wsp:rsidP="00D06A8B">
<w:pPr>
<w:rPr>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00F728CF">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<w:sz w:val="24"/>
<w:sz-cs w:val="24"/>
</w:rPr>
<w:t>${point.point2}</w:t>
</w:r>
</w:p>
</w:tc>
</#if>
这样就完成了
freemark实现遍历 list,每行三个的更多相关文章
- Java遍历List集合的三种方法
Java遍历List集合的三种方法 List<String> list = new ArrayList<String>(); list.add("aaa") ...
- 遍历List集合的三种方法
List<String> list = new ArrayList<String>(); list.add("aaa"); list.add("b ...
- Step one : 熟悉Unix/Linux Shell 常见命令行 (三)
3.学会使用一些管理命令 ps/top/lsof/netstat/kill/tcpdump/iptables/dd 端口查看 ps -- process status ps aux 观察程序所有程序 ...
- 遍历list集合的三种方式
List<String> list1 = new ArrayList<String>(); list1.add("1"); list1.add(" ...
- yii遍历行下的每列数据(小1月考)
效果图: 控制器(1种): //显示列表 public function actionList() { //实例化对象 $model= new Qiu(); ...
- 专题三、ArrayList遍历方式以及效率比较
一.遍历方式 ArrayList支持三种遍历方式. 1.第一种,随机访问,它是通过索引值去遍历 由于ArrayList实现了RandomAccess接口,它支持通过索引值去随机访问元素. 代码如下: ...
- java:数据结构(四)二叉查找树以及树的三种遍历
@TOC 二叉树模型 二叉树是树的一种应用,一个节点可以有两个孩子:左孩子,右孩子,并且除了根节点以外每个节点都有一个父节点.当然这种简单的二叉树不能解决让树保持平衡状态,例如你一直往树的左边添加元素 ...
- map的三种遍历方法!
map的三种遍历方法! 集合的一个很重要的操作---遍历,学习了三种遍历方法,三种方法各有优缺点~~ /* * To change this template, choose Tools | Te ...
- WPF入门教程系列八——布局之Grid与UniformGrid(三)
五. Grid Grid顾名思义就是“网格”,它的子控件被放在一个一个实现定义好的小格子里面,整齐配列. Grid和其他各个Panel比较起来,功能最多也最为复杂.要使用Grid,首先要向RowDef ...
随机推荐
- 在magento的eav模型中如何在更新记录时只在value表的原值上更新
1,一般情况下,当我们在调用getModel在load某条实体接着更新对应实体上的值是,都不会覆盖原来的实体value表上的值,而是保留原来的,并在value表上重新创建一条值记录,比如初始表如下: ...
- Apache负载均衡与Tomcat集群配置学习(Windows环境)
本文主要参考自http://www.iteye.com/topic/985404?dhcc,经由实际操作配置操并记录而成. 由于最近的一个Java开发项目用到了Tomcat中间件作为web服务器,刚开 ...
- [Angular] Upgrade existing Angular app to Progressive Web App
If you alread have an existing Angular application and want to upgrade to progressive web app. 1. In ...
- Chromium网页输入事件捕捉和手势检測过程分析
连续的输入事件可能会产生一定的手势操作.比如滑动手势和捏合手势. 在Chromium中,网页的输入事件是在Browser进程中捕捉的.Browser进程捕获输入事件之后,会进行手势操作检測.检測出来的 ...
- VS2015--win32project配置的一些想法之在 Visual Studio 2015 中进行调试的同一时候分析性能
出处: https://msdn.microsoft.com/zh-cn/magazine/dn973013(en-us).aspx 很多开发商花了绝大多数时间获取应用程序才干正常发挥作用.更少的时间 ...
- android中进程的优先级
android中进程的优先级
- php实现邮箱激活功能
php实现邮箱激活功能 一.样例 二.文件结构 其中swiftmailer-master是第三方插件,用来发验证邮件 三.核心代码 doAction.php 响应页面 <?php header( ...
- Fuzzy C Means 算法及其 Python 实现——写得很清楚,见原文
Fuzzy C Means 算法及其 Python 实现 转自:http://note4code.com/2015/04/14/fuzzy-c-means-%E7%AE%97%E6%B3%95%E5% ...
- Java-MyBatis-3.0:MyBatis 3 简介
ylbtech-Java-MyBatis-3.0:MyBatis 3 简介 1.返回顶部 1. 简介 什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程 ...
- shell编程01—shell基础
01.学习shell编程需要的知识储备 1.vi.vim编辑器的命令,vimrc设置 2.命令基础,100多个命令 3.基础.高端的网络服务,nfs,rsync,inotify,lanmp,sersy ...