freemarker常用办法

一、freemarker判断list为空的办法有如下几种:
<#list xxList as itme>
1、<#if itme[0]?exists>
2、<#if itme?has_content>
3、<#if itme[0]??>

二、截取字符串长度:
有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的列子就可以自定义显示的长度
< lt. <= lte. > gt. >= gte
<#if jstbqkVO.gzdd?length lt 8>
           <a>${jstbqkVO.gzdd?default("")}</a>
      <#else>
           <a title="${jstbqkVO.gzdd}">${jstbqkVO.gzdd[0..3]?default("")}...</a>
</#IF>
意思就是如果这个字符串的长度小于8,那么就正常显示,反之则取4位

三、 Freemarker中对List进行排序
通常我们的排序操作都是通过DAO层来实现的,如果我们想随时更改我们的排序,那么就必须修改我们的DAO层代码,确实不方便。但Freemarker为我们提供了这样的排序方法,解决了这个问题。
1. sort升序排序函数
sort对序列(sequence)进行排序,要求序列中的变量必须是:字符串(按首字母排序),数字,日期值。
<#list list?sort as l>…</#list>
2. sort_by函数
sort_by有一个参数,该参数用于指定想要排序的子变量,排序是按照变量对应的值进行排序,如:
<#list userList?sort_by(“age”) as user>…</#list>
age是User对象的属性,排序是按age的值进行的。
3. reverse降序排序函数
    <#list list? reverse as l>…</#list>
     reverse使用同sort相同。reverse还可以同sort_by一起使用
       如:想让用户按年龄降序排序,那么可以这个样写<#list userList?sort_by(“age”)?reverse as user>…</#list>

你可能感兴趣的:(DAO,freemarker)