1.下拉框中使用三元表达式:

<option value="1类" ${(bean.col5!?string="1类")?string('selected','')}>1类</option>

2.ftl页面中保留小数

<td><input type="text" class="form-control"  value="${(rows[2].col7?string("0.00"))!}" readonly/></td>

3.宏的使用(下拉框案例)

 <#macro select id data value="" defaultText="" valueField="value" textField="text">
<select class="form-control input-sm select2" name="${id}" id="${id}">
<option value="">${defaultText}</option>
<#if data?is_hash_ex>
<#list data?keys as key>
<#if key==value>
<option value="${key}" selected>${data[key]}</option>
<#else>
<option value="${key}">${data[key]}</option>
</#if>
</#list>
<#else>
<#list data as dataItem>
<#if valueField!="">
<#if value==dataItem[valueField]?string>
<option value="${dataItem[valueField]}" selected>${dataItem[textField]}</option>
<#else>
<option value="${dataItem[valueField]}" >${dataItem[textField]}</option>
</#if>
<#else>
<#if dataItem==value>
<option value="${dataItem}" selected>${dataItem}</option>
<#else>
<option value="${dataItem}">${dataItem}</option>
</#if>
</#if>
</#list>
</#if>
<select>
</#macro>

调用:

<#import "/macro/control.ftl" as my/>
<@my.select4vld id="bgyy" data=TC_bgyy value="${bean.bgyy!}" /></#if>

4.list遍历

<#list list as user>
第${user_index+1}个用户
用户名:${user.name}
年 龄: ${user.age}
</#list>
遍历的时候排序:
<#list list?sort as l>…</#list>
<#list userList?sort_by(“age”) as user>…</#list>
<#list list? reverse as l>…</#list>。reverse使用同sort相同。reverse还可以同sort_by一起使用

5.判断集合包含关系(主要用于checkBox多选框中)

 <input name="role" type="checkbox"  ${roleIds!?seq_contains(role.roleId)?string("checked", "")} value="${role.roleId}">${role.roleName}&nbsp;&nbsp;&nbsp;
${roleIds!?seq_contains(role.roleId)?string("checked", "")}

freemark使用总结的更多相关文章

  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. Data Center手册(1):架构

    如图是数据中心的一个基本架构 最上层是Internet Edge,也叫Edge Router,也叫Border Router,它提供数据中心与Internet的连接. 连接多个网络供应商来提供冗余可靠 ...

  2. Java提高篇(一):区分引用变量与对象

    我们有代码: New A=new New(); 下面是这个New的类: class New { public New() { System.out.println("这是New类当中的构造方 ...

  3. Android 音视频开发(一) : 通过三种方式绘制图片

    版权声明:转载请说明出处:http://www.cnblogs.com/renhui/p/7456956.html 在 Android 音视频开发学习思路 里面,我们写到了,想要逐步入门音视频开发,就 ...

  4. [Swift]LeetCode437. 路径总和 III | Path Sum III

    You are given a binary tree in which each node contains an integer value. Find the number of paths t ...

  5. [Swift]LeetCode593. 有效的正方形 | Valid Square

    Given the coordinates of four points in 2D space, return whether the four points could construct a s ...

  6. ELK之filebeat、logstash多个topic配置

    启动多个进程收集日志.直接output到kafka,output到不同的topiccat filebeat.ymlfilebeat.prospectors:- input_type: log path ...

  7. 多线程系列(四):Task

    目录: 为什么要使用任务 任务 一.为什么使用任务 线程池已经可以让我们简单地创建线程,并优化了性能. 但是,线程池的缺点在于,我不清楚我的操作什么时候完成,也不能收到返回值,因为委托是没有返回值的. ...

  8. FAutoTest-微信小程序 / 公众号H5 自动化利器

    X5内核H5自动化背景 近来有很多童靴咨询如何做微信小程序/公众号等H5页面来做自动化,之前写了一篇文章微信小程序自动化测试实践 https://www.cnblogs.com/yyoba/p/945 ...

  9. python网络-多线程(22)

    一.什么是线程 线程(英语:thread)是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.同一进程中的多条线程将共享该进程中的全部系统资源,一个进程可以有很多线程,每 ...

  10. mongodb高级聚合查询

    在工作中会经常遇到一些mongodb的聚合操作,特此总结下.mongo存储的可以是复杂类型,比如数组.对象等mysql不善于处理的文档型结构,并且聚合的操作也比mysql复杂很多. 注:本文基于 mo ...