文章目录
一、数据库设计与关联
在管理系统中,每个用户都有自己相应的角色,对应于不同的权限。该管理系统设置了三张数据表,用于存储用户信息,角色信息,以及用户与角色之间的关系。
tb_user用户表
存储用户编号,用户名和用户密码
tb_role角色表
存储系统的角色及描述
user_role用户角色关系表
存储用户与系统角色的对应关系
二、用户权限
系统设置了管理员(admin)和用户(user)两个角色,管理员具有“用户管理”与“角色管理”两种权限,用户只具有“用户管理”权限。
因此,我们为两种角色的用户绘制了不同的页面,系统登录后获取用户ID(userId),然后根据用户ID(userId)在用户角色关系表中获取对应的角色ID(roleId),从而提供不同的界面。
UserController.java
登录时获取用户ID
@RequestMapping("login.do")
public ModelAndView login(User user, HttpSession session){
int id = userService.login(user.getUsername(),user.getPassword());
ModelAndView modelAndView = new ModelAndView();
if(id!=-1){
List<Integer> roleIds = roleService.findRoleByUserId(id);
session.setAttribute("user",user);
session.setAttribute("roleIds",roleIds);
modelAndView.setViewName("main");
}<