有时候我们想把后台传回来的数据直接在页面上面展示,就可以使用Thymeleaf模板,下面以自己实际用到的实例举例
比如当我登录的时候,想在页面那里显示登录用户的相关信息的时候,在这里我定义的是用HttpSession 对象来存数据,然后再在页面上使用它:
public String tologin(Users users,Roles roles, Model model, HttpSession session) { try { //获取subject Subject subject = SecurityUtils.getSubject(); //封装用户数据 String userName=usersService.selectByschoolNumber(users.getSchoolNumber()).getUserName(); UsernamePasswordToken usernamePasswordToken = new UsernamePasswordToken(users.getSchoolNumber(), users.getPossword()); subject.login(usernamePasswordToken); String rolesName = usersService.selectByschoolNumber(users.getSchoolNumber()).getRolesList().get(0).getRolesName(); session.setAttribute("UserName", userName); session.setAttribute("Roles", rolesName); session.setAttribute("StudentNumber", users.getSchoolNumber()); session.setMaxInactiveInterval(86400);
......
}
接下来我要在页面里面获取该值然后让它显示出来,在页面使用thymeleaf模板的时候记得一开始要先引入thymeleaf模板,要不然下面使用会报错:
//引入 <html lang="zh" xmlns:th="https://www.thymeleaf.org" xmlns:shiro="www.thymeleaf.org/thymeleaf-extras-shiro"> //使用: <i class="icon icon-emotsmile"></i><samp th:text="欢迎您!+${session.loginName}"></samp>
效果图: