博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【freemarker】渲染列表一系列操作
阅读量:5279 次
发布时间:2019-06-14

本文共 2898 字,大约阅读时间需要 9 分钟。

 

数据模型:

public class AddressVo implements Serializable {    private static final long serialVersionUID = 1137197211343312155L;    private String name;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public AddressVo(String name) {        this.name = name;    }    public AddressVo() {    }}
public class UserVo implements Serializable {    private String name;    private Integer age;    private List
addressVoList; private Date birthday; public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public List
getAddressVoList() { return addressVoList; } public void setAddressVoList(List
addressVoList) { this.addressVoList = addressVoList; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; }}

 

@GetMapping("list")    public String list(Model model){        List
userVoList=new ArrayList<>(); for (int i=0;i<5;i++){ UserVo userVo=new UserVo(); userVo.setName("张三"+i); if(i!=3){ userVo.setAddressVoList(Arrays.asList(new AddressVo("上海"+i),new AddressVo("北京"+i))); } userVo.setAge(i*5); if(i!=2){ userVo.setBirthday(DateTime.now().plusDays(i).toDate()); } userVoList.add(userVo); } model.addAttribute("userList",userVoList); return "userList"; }

 

 

freemarker模板

<#list userList as user >
<#--防止user里没有name-->
姓名 年龄 地址 生日 操作
${user.name!} ${user.age!} <#--防止user的addressVoList为空--> <#list user.addressVoList!> <#items as address> ${address.name!} <#sep >,
<#else >无地址
${(user.birthday?string("yyyy-MM-dd"))!"日期不存在"} <#if user?is_even_item>偶数 <#else> 奇数
${user?counter}

 

展示:

 

 1、freemarker格式化日期防止为空导致异常。

 2、freemark遍历列表防止值为空导致异常。

 

转载于:https://www.cnblogs.com/gyjx2016/p/11171510.html

你可能感兴趣的文章
【译】x86程序员手册01
查看>>
CDI server decorstors intercepters scope EL eventmodel
查看>>
软件测试homework1
查看>>
第六次课程作业:随笔
查看>>
行列式,线性变换,变换,雅克比行列式,二次型
查看>>
文件写入和读取
查看>>
物理学中的几何方法笔记
查看>>
dtree实现动态加载树形菜单,动态插入树形菜单
查看>>
如何在java List中进行模糊查询
查看>>
定制一套属于自己的博客样式
查看>>
ArcGIS自定义工具箱-字段值部分替换
查看>>
eclipse的安装和汉化
查看>>
【NumberValidators】大陆身份证验证
查看>>
C语言实现字符串IP与整数型IP的相互转换
查看>>
使用Mongoose类库实现简单的增删改查
查看>>
让WebForm异步起来
查看>>
架构师
查看>>
UIDatePicker自定义背景
查看>>
JS 日期比较
查看>>
ORM的单表操作
查看>>