先创建一个user表
package com.liuhaiyang.springboot.entity;
import lombok.Data;
//@Data 添加这个注解将不需要在写构造方法set、get等
public class User {
private Integer id;
private String name;
private String phone;
private String address;
//set()和get方法()
}
这里说一下要是想使用@Data注解,需要在pom文件添加lombok 插件
org.projectlombok lombok
核心配置文件
#关闭Thymeleaf页面的缓存开关 spring.thymeleaf.cache=false #thymeleaf 模版前缀,默认值,可选项 spring.thymeleaf.prefix=classpath:/templates/ #thymeleaf 模版后缀,默认值,可选项 spring.thymeleaf.suffix=.html
写一个controller控制层类
@Controller
public class UserController {
@RequestMapping("/each/array")
public String eachArray(Model model){
User[] users=new User[10];
for (int i=0;i<10;i++){
User user=new User();
user.setId(i);
user.setName("王五"+i);
user.setPhone("8888888888"+i);
user.setAddress("北京丰台"+i);
users[i]=user;
}
model.addAttribute("users",users);
return "eachArray";
}
}
eachArray 页面展示数据
循环遍历Array数组
循环遍历Array数组(使用方法和list一样)
结果截图
2 th:each遍历List集合
user类请看上面
controller类
@Controller
public class UserController {
@RequestMapping("/each/list")
public String eachList(Model model){
List userList=new ArrayList();
for (int i=0;i<10;i++){
User user=new User();
user.setId(100+i);
user.setName("张"+i);
user.setPhone("12345678"+i);
user.setAddress("河南省郑州市"+i);
userList.add(user);
}
model.addAttribute("userList",userList);
model.addAttribute("data","springboot");
return "eachList";
}
}
前端页面
th:each="user, userStat : ${userList}" 中的 ${userList} 是后台传过来的集合
userStat 是循环体的信息,通过该变量可以获取如下信息
index: 当前迭代对象的 index (从 0 开始计算)
count: 当前迭代对象的个数(从 1 开始计算) 这两个用的较多
size: 被迭代对象的大小
current: 当前迭代变量
even/odd: 布尔值,当前循环是否是偶数/奇数(从 0 开始计算)
first: 布尔值,当前循环是否是第一个
last: 布尔值,当前循环是否是最后一个
循环遍历List集合
xxxx
xxxx
xxxx
结果截图
3 th:each遍历Map集合controller类
@Controller
public class UserController {
@RequestMapping("/each/map")
public String eachMap(Model model){
Map userMap=new HashMap();
for (int i=0;i<10;i++){
User user=new User();
user.setId(i);
user.setName("李四"+i);
user.setPhone("100000000"+i);
user.setAddress("河北邯郸"+i);
userMap.put(i,user);
}
model.addAttribute("userMaps",userMap);
return "eachMap";
}
}
前端页面
循环遍历Map集合
结果截图
4. 综合运用
这是一个List嵌套Map嵌套list嵌套user得案例,不难,就是看着复杂。
controller类
@Controller
public class UserController {
@RequestMapping("/each/all")
public String eachall(Model model){
//List->Map->list->user
List
前端页面
循环遍历复杂的集合
循环遍历复杂的集合 list->map->list->user
Map的集合key:
结果截图



