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. 数据调试~~TCP转串口、串口转TCP调试

    Android socket开发了一个socket客户端,当输入服务器ip以及端口,建立连接之后,Android可以发送数据到电脑接收服务器端. 如果电脑端没有socket服务器怎么办?方法如下: 1 ...

  2. C语言面试题分类->字符串处理

    1.strlen:计算字符串长度(不包含'\0') 实现想法:遍历字符串,直到'\0'结束 #include<stdio.h> #include<stdlib.h> #incl ...

  3. CoreProfiler升级到.NetStandard 2.0

    致所有感兴趣的朋友: CoreProfiler和相应的Sample项目cross-app-profiling-demo都已经升级到.NetStandrard 2.0和.NetCore 2.0. 有任何 ...

  4. 【错误解决】Intellj(IDEA) warning no artifacts configured

    : warning no artifacts configured,,上面木有Artifacts的选项,,好尴尬, [解决方案]artifacts,是maven中的概念(项目是maven项目),由于没 ...

  5. Mysql索引最左匹配原则

    先来看个例子: 1. 示例1:假设有如下的一张表: DROP TABLE IF EXISTS testTable; CREATE TABLE testTable ( ID BIGINT NOT NUL ...

  6. Redis的7个应用场景

    一:缓存——热数据 热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用redis缓存,毕竟强大到冒泡的QPS和极强的稳定性不是所有类似工具都有的,而且相比于memcached还提供了 ...

  7. FFmpeg 结构体学习(六): AVCodecContext 分析

    在上文FFmpeg 结构体学习(五): AVCodec 分析我们学习了AVCodec结构体的相关内容.本文,我们将讲述一下AVCodecContext. AVCodecContext是包含变量较多的结 ...

  8. Python爬虫7-Cookie & Session

    GitHub代码练习地址:1.手动利用cookie访问网页:https://github.com/Neo-ML/PythonPractice/blob/master/SpiderPrac10_cook ...

  9. [Swift]LeetCode811. 子域名访问计数 | Subdomain Visit Count

    A website domain like "discuss.leetcode.com" consists of various subdomains. At the top le ...

  10. 还在使用SimpleDateFormat?你的项目崩没?

    如果是在多线程环境下,就需要注意了. 要点: 1.加Synchronized同步: 2.使用ThreadLocal: 3.jdk8使用DateTimeFormatter替代SimpleDateForm ...