我的做法是先做一个模板,这三个只都是从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,每行三个的更多相关文章

  1. Java遍历List集合的三种方法

    Java遍历List集合的三种方法 List<String> list = new ArrayList<String>(); list.add("aaa") ...

  2. 遍历List集合的三种方法

    List<String> list = new ArrayList<String>(); list.add("aaa"); list.add("b ...

  3. Step one : 熟悉Unix/Linux Shell 常见命令行 (三)

    3.学会使用一些管理命令 ps/top/lsof/netstat/kill/tcpdump/iptables/dd 端口查看 ps -- process status ps aux  观察程序所有程序 ...

  4. 遍历list集合的三种方式

    List<String> list1 = new ArrayList<String>(); list1.add("1"); list1.add(" ...

  5. yii遍历行下的每列数据(小1月考)

    效果图: 控制器(1种): //显示列表    public function actionList()    {        //实例化对象        $model= new Qiu();   ...

  6. 专题三、ArrayList遍历方式以及效率比较

    一.遍历方式 ArrayList支持三种遍历方式. 1.第一种,随机访问,它是通过索引值去遍历 由于ArrayList实现了RandomAccess接口,它支持通过索引值去随机访问元素. 代码如下: ...

  7. java:数据结构(四)二叉查找树以及树的三种遍历

    @TOC 二叉树模型 二叉树是树的一种应用,一个节点可以有两个孩子:左孩子,右孩子,并且除了根节点以外每个节点都有一个父节点.当然这种简单的二叉树不能解决让树保持平衡状态,例如你一直往树的左边添加元素 ...

  8. map的三种遍历方法!

    map的三种遍历方法!   集合的一个很重要的操作---遍历,学习了三种遍历方法,三种方法各有优缺点~~ /* * To change this template, choose Tools | Te ...

  9. WPF入门教程系列八——布局之Grid与UniformGrid(三)

    五. Grid Grid顾名思义就是“网格”,它的子控件被放在一个一个实现定义好的小格子里面,整齐配列. Grid和其他各个Panel比较起来,功能最多也最为复杂.要使用Grid,首先要向RowDef ...

随机推荐

  1. 使用githug游戏提高git水平

  2. C#中的public protected internal private

    1.常见的四种方位修饰符关系下图中的protected internal是并集的关系,意思是在命名空间内是internal的,在命名空间外是protected的 2.sealed final seal ...

  3. 2016.03.10,英语,《Vocabulary Builder》Unit 05

    mal: means bad. malpractice [ˌmæl'præktɪs] n. 失职, 行为不当; malady ['mælədi] n. 病, 疾病, 弊病; malodorous [ˌ ...

  4. 造个简单的轮子倒是不难,但可用性健壮性高到qt这样全世界都在用,就几乎不可能了

    造个简单的轮子倒是不难,但可用性健壮性高到qt这样全世界都在用,就几乎不可能了比如自己写个事件循环实现信号槽,还真不难,我这边的架构里就这么搞了个仿osgi的事件总线嵌入式实时操作系统上能用的大型gu ...

  5. Swift - 使用CollectionView实现图片Gallery画廊效果(左右滑动浏览图片)

    1,效果图 (1)图片从左至右横向排列(只有一行),通过手指拖动可以前后浏览图片. (2)视图滚动时,每张图片根据其与屏幕中心距离的不同,显示尺寸也会相应地变化.越靠近屏幕中心尺寸就越大,远离屏幕中心 ...

  6. NEUOJ 1702 撩妹全靠魅力值 (三维偏序)

    题目链接:http://acm.neu.edu.cn/hustoj/problem.php?id=1702 题目大意:就是问每个人三个属性同时不低于另外几个人....人不分先后 经典的三维偏序问题 解 ...

  7. Rsync 服务器搭建

    Rsync简介 rsync 是一个 Unix 系统下的文件同步和传输工具. 它具备以下特性: 1. 能更新整个目录和树和文件系统 2. 有选择性的保持符号链链.硬链接.文件属于.权限.设备以及时间 等 ...

  8. art-template模板渲染及其过滤器

    原生语法 使用原生语法,需要导入template-native.js文件.在HTML中定义模板,注意模板的位置,不要放到被渲染区域,防止模板丢失. <script id="tpl&qu ...

  9. ibatiS启动的异常 The content of elements must consist of well-formed character data or markup

    ibatiS启动的异常 The content of elements must consist of well-formed character data or markup 配置的动态SQL语句里 ...

  10. Win8 Windows Defender default behaviour

    Problem Description ********************* Is it possible, to change the default behaviour when findi ...