本小结讲解,点击菜单进行页面跳转,看下图,点击管理员列表后会被认证拦截器首先拦截,验证用户是否登录,如果登录就放行,紧接着会被权限验证拦截器再次拦截,拦截的时候,会根据URL地址上找到对应的方法,然后查询方法上标注的自定义权限注解,紧接着根据当前登录用户查询出所有权限列表,然后进行验证,如果包含对应注解中的权限代码,就放行,否则提示或者跳转到404.
/**
* 进入管理用户列表页面
* @return*/@AccessPermissionsInfo("admin:list")
@RequestMapping(value= "/admin-user-list.action",method =RequestMethod.GET)publicString adminUserListPage(HttpSession session,Model model){//获取session用户是否存在
AdminUser adminUser = (AdminUser)session.getAttribute("adminUser");if(adminUser!=null){//根据用户名查询出该用户所有拥有的权限集合,//这个权限集合查询出来了的集合是一个String集合,查询出来只有一列数据permission.code
List permissions =permissionService.findAllPermissionByLoginName(adminUser.getLoginName());
model.addAttribute("permissions",permissions);
}return "admin-user-list";
}
拦截器的拦截过程如下图:
AuthorizationInterceptor类&#