4.1 项目创建
thymeleaf、web-starter、devtools、lombok
4.2 静态资源处理
自动配置好,我们只需要把所有静态资源放到 static 文件夹下,页面放到templates文件夹
4.3 路径构建
th:action=”@{/login}”
4.4 模板抽取
需要抽取的模板:
引用模板的三种方式:
可以带上“#”号选择指定id而不用th:fragment的值
三种方式形成的效果:
①th:insert
②replace
③include
4.5 页面跳转
@PostMapping("/login")public String main(User user, HttpSession session, Model model){if(StringUtils.hasLength(user.getUserName()) && "123456".equals(user.getPassword())){//把登陆成功的用户保存起来session.setAttribute("loginUser",user);//登录成功重定向到main.html; 重定向防止表单重复提交return "redirect:/main.html";}else {model.addAttribute("msg","账号密码错误");//回到登录页面return "login";}}
4.6 数据渲染
@GetMapping("/dynamic_table")public String dynamic_table(Model model){//表格内容的遍历List<User> users = Arrays.asList(new User("zhangsan", "123456"),new User("lisi", "123444"),new User("haha", "aaaaa"),new User("hehe ", "aaddd"));model.addAttribute("users",users);return "table/dynamic_table";}
<table class="display table table-bordered" id="hidden-table-info"><thead><tr><th>#</th><th>用户名</th><th>密码</th></tr></thead><tbody><tr class="gradeX" th:each="user,stats:${users}"><td th:text="${stats.count}">Trident</td><td th:text="${user.userName}">Internet</td><td >[[${user.password}]]</td></tr></tbody></table>
