java ftl 模板 输出list_Freemarker模板中输出List数据

时间:2025-03-18 17:50:52

测试在Freemarker的模板中输出控制中的List数据列表,List列表中可以是一个自定义的JavaBean。实际上Freemarker将控制器返回的数据转化成JSON格式的数据。

控制器中构建一个简单的List数据和一个带有用户自定义JavaBean的List序列,如下:package ;

import ;

import ;

import ;

import ;

import ;

import ;

/**

* 输出Freemarker中的Sequence数据

* @author Administrator

*

*/

@Controller

@RequestMapping("/sequencePrintController")

public class SequencePrintController {

@RequestMapping("/printList")

public String printList(ModelMap map){

// 简单的List

List list = new ArrayList();

("张三");

("李四");

("王武");

("赵牛");

("李强");

("王强");

("邢鑫");

("names", list);

// 有数据对象的List

List users = new ArrayList();

(new User(1, "张三", "男", 21));

(new User(2, "李四", "男", 19));

(new User(3, "王武", "女", 20));

(new User(4, "赵牛", "男", 24));

(new User(5, "李强", "女", 27));

("users", users);

return "";

}

}

 ;

/**

* 用户信息JavaBean

* @author Administrator

*

*/

public class User {

private int id; // 用户ID

private String name; // 用户名

private String sex; // 性别

private int age; // 年龄

public User(int id, String name, String sex, int age) {

 = id;

 = name;

 = sex;

 = age;

}

public int getId() {

return id;

}

public void setId(int id) {

 = id;

}

public String getName() {

return name;

}

public void setName(String name) {

 = name;

}

public String getSex() {

return sex;

}

public void setSex(String sex) {

 = sex;

}

public int getAge() {

return age;

}

public void setAge(int age) {

 = age;

}

}

Freemarker模板文件内容()HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

输出Freemarker的Sequence

(1)输出用户名列表

${name}

#list>

(2)显示用户信息表格

用户ID 用户名 性别 年龄
${} ${} ${} ${}

#list>

(3) 序列连接(["张三", "李四"] + ["王五", "赵六"])操作:

- ${name}

#list>

(4)序列片段(["a","b","c","d","e"][1..2]):

- ${s}

#list>

(5)序列连接(["a","b","c","d","e"][2..])操作:

- ${s}

#list>

(6)取出序列中指定下标(从0开始;如:user[1])的值:

用户ID:${users[2].id}

用户名:${users[2].name}

性 别:${users[2].sex}

年 龄:${users[2].age}

结果如下:

(1)输出用户名列表张三 李四 王武 赵牛 李强 王强 邢鑫(2)显示用户信息表格用户ID用户名性别年龄

1张三男21

2李四男19

3王武女20

4赵牛男24

5李强女27

(3) 序列连接(["张三", "李四"] + ["王五", "赵六"])操作:- 张三- 李四- 王五- 赵六(4)序列片段(["a","b","c","d","e"][1..2]):- b- c(5)序列连接(["a","b","c","d","e"][2..])操作:- c- d- e(6)取出序列中指定下标(从0开始;如:user[1])的值:用户ID:3用户名:王武性 别:女年 龄:20