@RequestMapping("/list") //分页查询数据 public String list( Integer p, Integer pageSize, Model model) { p = null == p ? 1 : p; //默认显示第一页 pageSize = null == pageSize ? 10 : pageSize; //默认每页显示10条 Page<Student> page = PageHelper.startPage(p, pageSize); List<Caller> callerList = callerService.list(); SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); callerList.forEach(caller -> { caller.setEntranceTimeStr(sdf1.format(caller.getEntranceTime())); caller.setLeaveTimeStr(sdf1.format(caller.getLeaveTime())); }); model.addAttribute("callerList", callerList); //绑定接受参数 model.addAttribute("cp", page.getPageNum()); //当前页 model.addAttribute("tp", page.getPages()); //总页数 model.addAttribute("total", page.getTotal()); //总条数 model.addAttribute("pageListURL", "stayoutlate/list"); //总条数 return "caller/callerList"; }请详细解释每一行代码
时间: 2023-06-26 19:06:33 浏览: 161
@RequestMapping("/list"): 该注解表示请求 URL 映射,表示当请求的 URL 匹配 "/list" 时,将会调用该方法进行处理。
public String list(Integer p, Integer pageSize, Model model): 定义了一个名为 "list" 的方法,该方法的参数包括一个 Integer 类型的 p、一个 Integer 类型的 pageSize 和一个 Model 类型的 model。返回值为一个 String 类型的视图名称。
p = null == p ? 1 : p; //默认显示第一页:如果 p 参数为 null,则设置其值为 1,否则保持原值。
pageSize = null == pageSize ? 10 : pageSize; //默认每页显示10条:如果 pageSize 参数为 null,则设置其值为 10,否则保持原值。
Page<Student> page = PageHelper.startPage(p, pageSize);:使用 Mybatis-PageHelper 实现分页查询,其中 startPage() 方法会开启一个新的分页查询,参数 p 表示当前页码,pageSize 表示每页显示的记录数。
List<Caller> callerList = callerService.list();:调用 Service 层的 list() 方法查询数据库中的所有数据,返回一个 List 集合。
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");:定义了一个 SimpleDateFormat 对象,用于将 Date 类型的时间转换为字符串类型。
callerList.forEach(caller -> { caller.setEntranceTimeStr(sdf1.format(caller.getEntranceTime())); caller.setLeaveTimeStr(sdf1.format(caller.getLeaveTime())); });:将查询出来的每个 Caller 对象的入场时间和离场时间转换为字符串类型,并将其设置到 Caller 对象的 entranceTimeStr 和 leaveTimeStr 属性中。
model.addAttribute("callerList", callerList);:将查询出来的 Caller 对象列表绑定到 Model 对象中。
model.addAttribute("cp", page.getPageNum());:将当前页码绑定到 Model 对象中。
model.addAttribute("tp", page.getPages());:将总页数绑定到 Model 对象中。
model.addAttribute("total", page.getTotal());:将总记录数绑定到 Model 对象中。
model.addAttribute("pageListURL", "stayoutlate/list");:将分页列表 URL 绑定到 Model 对象中。
return "caller/callerList";:返回一个名为 "callerList" 的视图名称,该视图将会被视图解析器解析,显示在用户的浏览器上。
阅读全文