1.数字超过1000时会有逗号  ,设置数据格式 <#setting number_format="#">

2.数据叠加 求总计:

  1)定义变量:<#assign baseInfoTotalpower =0?number>

  2)循环中判空后累加,每次累加需要将数据转为数字,不然最后结果会是字符串的拼接:

    <#if info.deviceUsePower??>

    <#assign baseInfoTotalpower = baseInfoTotalpower?number+deviceUsePower[info.deviceId]?number>

    </#if>

 3.设置默认值:<w:t>${deviceUsePower[info.deviceId]?default(0)}</w:t>

 4.在word中合并单元格,例:

  <#if info_index == 0 >
<w:tc>
<w:tcPr>
<w:tcW w:w="2522" w:type="dxa"/>
<w:vMerge w:val="restart"/>
<w:tcBorders>
<w:top w:val="single" w:color="000000" w:sz="6" w:space="0"/>
<w:left w:val="single" w:color="000000" w:sz="6" w:space="0"/>
<w:bottom w:val="single" w:color="000000" w:sz="12" w:space="0"/>
<w:right w:val="single" w:color="000000" w:sz="6" w:space="0"/>
</w:tcBorders>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p>
<w:pPr>
<w:widowControl/>
<w:jc w:val="center"/>
<w:textAlignment w:val="center"/>
<w:rPr>
<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:eastAsia="宋体" w:cs="Times New Roman"/>
<w:color w:val="000000"/>
<w:kern w:val="0"/>
<w:szCs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:eastAsia="宋体" w:cs="Times New Roman"/>
<w:color w:val="000000"/>
<w:kern w:val="0"/>
<w:szCs w:val="21"/>
</w:rPr>
<w:t>0.</w:t>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="eastAsia" w:ascii="宋体" w:hAnsi="宋体" w:eastAsia="宋体" w:cs="Times New Roman"/>
<w:color w:val="000000"/>
<w:kern w:val="0"/>
<w:szCs w:val="21"/>
</w:rPr>
<w:t>85</w:t>
</w:r>
</w:p>
</w:tc>
<#else>
<w:tc>
<w:tcPr>
<w:tcW w:w="2522" w:type="dxa"/>
<w:vMerge w:val="continue"/>
<w:tcBorders>
<w:left w:val="single" w:color="000000" w:sz="6" w:space="0"/>
<w:right w:val="single" w:color="000000" w:sz="6" w:space="0"/>
</w:tcBorders>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p>
<w:pPr>
<w:widowControl/>
<w:jc w:val="center"/>
<w:textAlignment w:val="center"/>
<w:rPr>
<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:eastAsia="宋体" w:cs="Times New Roman"/>
<w:color w:val="000000"/>
<w:kern w:val="0"/>
<w:szCs w:val="21"/>
</w:rPr>
</w:pPr>
</w:p>
</w:tc>
</#if>

5.for循环:<#list 1..count as i>   ${i}</#list>

6.map循环:

  <#list map?keys as key >

    ${keys_index?if_exists+1} //获取序号              先判空,如果没有就从1 开始

    ${loopDevice[key]}//获取值

  </#list>

7. 大小比较

    >(gt)      :判断左边是否大于右边

>=(gte)  :.....

<(lt)       :.....

<=(lte)    :.....
   列:<#if UAnalyze[key].minUB lt 204.6>

8.导出word 只能用wps才能打开,但是重新保存后用word也能打开了。可能使用模板xml是用wps创建的部分语法在word中不兼容。

  使用对比找出不一样的替换即可。

Freemarker 使用记录的更多相关文章

  1. freemarker判断记录集是不是为空

    #if($personals)这样写 直接把记录标识符放在if里面就可以了

  2. jsp、freemarker、velocity对比

    在java领域.表现层技术主要有三种:jsp.freemarker.velocity. jsp是大家最熟悉的技术长处:1.功能强大,能够写java代码2.支持jsp标签(jsp tag)3.支持表达式 ...

  3. freeMarker(九)——程序开发指南补充知识

    学习笔记,选自freeMarker中文文档,译自 Email: ddekany at users.sourceforge.net 1.变量.范围 本章介绍当模板在访问变量时发生了什么事情,还有变量是如 ...

  4. jsp,velocity,freemark页面引擎的比較

    在java领域.表现层技术主要有三种:jsp.freemarker.velocity. jsp是大家最熟悉的技术 长处: 1.功能强大,能够写java代码 2.支持jsp标签(jsp tag) 3.支 ...

  5. 【问题记录】使用FreeMarker生成数据,模板明明没错却一直报错“The following has evaluated to null or missing:”

    今天使用FreeMarker生成数据时一直报错,错误信息是“The following has evaluated to null or missing:”,告知我找不到值. 但是我再三确认,这些属性 ...

  6. freemarker页面中文乱码

    一.前言 简单的记录freemarker遇到的错误问题:ftl页面中文乱码 由于freemarker整合在ssm框架中,所以笔者直接贴配置代码 <beans xmlns="http:/ ...

  7. Freemarker常用技巧

    1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. <= lte. > gt. >= gte < ...

  8. freemarker 数据做加减计算

    controller的部分: @Controller@RequestMapping("/ContactsFrameIndex")public class ContactsFrame ...

  9. SiteMesh3整合SpringMVC+FreeMarker

    SiteMesh3配置 添加maven依赖 添加filter 配置servlet 添加sitemesh配置文件 decorator示例 SpringMVC.FreeMarker配置(404问题处理) ...

随机推荐

  1. CentOS7.6操作系统安装实例以及Linux版本、哲学思想介绍

    Linux起源1991年的10月5日,Torvalds在comp.os.minix新闻组上发布消息,正式向外宣布他自行编写的完全自由免费的内核诞生(Freeminix-like kernel sour ...

  2. 除了FastJson,你也应该了解一下Jackson(二)

    概览 上一篇文章介绍了Jackson中的映射器ObjectMapper,以及如何使用它来实现Json与Java对象之间的序列化和反序列化,最后介绍了Jackson中一些序列化/反序列化的高级特性.而本 ...

  3. css3中的@font-face你真的了解吗

    css3中的自定义字体方法@font-face @font-face属性可以让我们自定义网站字体属性,然后引用到想要应用该字体的元素上. 基本语法: @font-face { font-family: ...

  4. Clear Writer v1.8 更新

    拖更了这么久之后,Clear Writer 诈尸啦(bushi 下载链接:https://linhongping.lanzous.com/ikF2Udmf7if Clear Writer v1.8 更 ...

  5. Quartz.Net系列(二):介绍、简单使用、对比Windows计划任务

    1.介绍 Quartz是功能强大的开源作业调度库,几乎可以集成到任何Java应用程序中-从最小的独立应用程序到最大的电子商务系统.Quartz可用于创建简单或复杂的计划,以执行数以万计,数以万计的工作 ...

  6. Chrome启动选项

    1. Chrome Options 这是一个Chrome的参数对象,在此对象中使用add_argument()方法可以添加启动参数,添加完毕后可以在初始化Webdriver对象时将此Options对象 ...

  7. Shiro反序列化复现

    Shiro反序列化复现 ——————环境准备—————— 目标靶机:10.11.10.108 //docker环境 攻击机ip:无所谓 vpsip:192.168.14.222 //和靶机ip可通 1 ...

  8. Asp.Net Core入门之自定义中间件

    什么是中间件? 这里引用官方解释: 中间件是用于组成应用程序管道来处理请求和响应的组件.管道内的每一个组件都可以选择是否将请求交给下一个组件.并在管道中调用下一个组件之前和之后执行某些操作.请求委托被 ...

  9. cb22a_c++_标准模板库_STL_map_multimap红黑树(数据结构)关联容器

    cb22a_c++_标准模板库_STL_map_multimap红黑树(数据结构)关联容器map(映射,key不能重复,一对一对的,value_type(1, "one")),mu ...

  10. HTTP Request Smuggling 请求走私

    参考文章 浅析HTTP走私攻击 SeeBug-协议层的攻击--HTTP请求走私 HTTP 走私漏洞分析 简单介绍 攻击者通过构造特殊结构的请求,干扰网站服务器对请求的处理,从而实现攻击目标 前提知识 ...