实现用户只需要5个表即可实现: 1. 用户表 2. 角色表 3. 资源表 4. 用户-角色关联表 5. 角色-资源关联表
这几个表之间的关系为:
1.user
'CREATE TABLE `user` ( `ID` varchar(36) NOT NULL, `NAME` varchar(100) NOT NULL COMMENT ''登录名'', `PASSWORD` varchar(100) NOT NULL COMMENT ''密码'', `CREATEDATETIME` datetime DEFAULT NULL COMMENT ''创建时间'', `MODIFYDATETIME` datetime DEFAULT NULL COMMENT ''最后修改时间'', `Active` int(11) DEFAULT NULL, `Token` varchar(16) DEFAULT NULL, `email` varchar(100) DEFAULT NULL, PRIMARY KEY (`ID`), ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=''用户表'''2.resource
'CREATE TABLE `resources` ( `ID` varchar(36) NOT NULL, `PID` varchar(36) DEFAULT NULL COMMENT ''父ID'', `TEXT` varchar(100) DEFAULT NULL COMMENT ''资源名'', `SEQ` decimal(22,0) NOT NULL COMMENT ''顺序'', `SRC` varchar(200) DEFAULT NULL COMMENT ''资源地址'', `DESCRIPT` varchar(100) DEFAULT NULL COMMENT ''描述'', `ONOFF` varchar(1) DEFAULT NULL COMMENT ''1.开启验证,0.不开启'', `AllowInternet` varchar(1) DEFAULT NULL, PRIMARY KEY (`ID`), ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=''资源表'''3.role
'CREATE TABLE `role` ( `ID` varchar(36) NOT NULL, `PID` varchar(36) DEFAULT NULL COMMENT ''父ID'', `TEXT` varchar(100) DEFAULT NULL COMMENT ''角色名'', `SEQ` decimal(22,0) NOT NULL COMMENT ''顺序'', `DESCRIPT` varchar(100) DEFAULT NULL COMMENT ''描述'', PRIMARY KEY (`ID`), ON UPDATE NO ACTION ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=''角色表'''4.user_role_rela
'CREATE TABLE `user_roles` ( `ID` varchar(36) NOT NULL, `ROLE_ID` varchar(36) NOT NULL COMMENT ''角色ID'', `USER_ID` varchar(36) NOT NULL COMMENT ''用户ID'', PRIMARY KEY (`ID`), ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=''用户角色关系表'''5.role_resource
'CREATE TABLE `role_resources` ( `ID` varchar(36) NOT NULL, `ROLE_ID` varchar(36) NOT NULL COMMENT ''角色ID'', `RESOURCES_ID` varchar(36) NOT NULL COMMENT ''资源ID'', PRIMARY KEY (`ID`), ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=''角色资源关系表'''