Java權限驗證
這裏面我們進行一些簡單的權限驗證,先從數據庫建立關係來說起
建立數據庫表
1.User表(用戶)
CREATE TABLE USER(
id INT(11) PRIMARY KEY AUTO_INCREMENT COMMENT '用戶id',
userName VARCHAR(30) NOT NULL COMMENT '用戶姓名',
address VARCHAR(50) COMMENT '居住地址',
createTime DATETIME COMMENT '用戶創建時間',
modifyTime DATETIME COMMENT '用戶修改世家'
)
-- 給表名加上註釋
ALTER TABLE USER COMMENT ='用戶表'
1
2
3
4
5
6
7
8
9
10
11
12
2.Role表(角色)
CREATE TABLE ROLE(
id INT(11) PRIMARY KEY AUTO_INCREMENT COMMENT '角色id',
roleName VARCHAR(30) NOT NULL COMMENT '角色名稱',
createTime DATETIME COMMENT '角色創建時間'
)
-- 給表名加上註釋
ALTER TABLE role COMMENT = '角色表'
-- 設置mysql主鍵從自定義主鍵開始自增
ALTER TABLE role AUTO_INCREMENT = 1001;
1
2
3
4
5
6
7
8
9
10
11
12
13
3.User_Role_Associate表(用戶角色關聯表)
CREATE TABLE user_role_associate(
id INT(11) PRIMARY KEY AUTO_INCREMENT COMMENT '用戶角色關聯表id',
userid INT COMMENT '用戶id',
roleid INT COMMENT '角色id',
createtime DATETIME COMMENT '角色關聯創建時間',
modifytime DATETIME COMMENT '角色關聯修改時間'
)
ALTER TABLE user_role_associate COMMENT = '角色權限關聯表';
ALTER TABLE user_role_associate AUTO_INCREMENT = 2001;
1
2
3
4
5
6
7
8
9
10
11
12
下面,我們來進行數據庫方面的權限設置
-- 下面開始驗證我們的數據,從以下兩個維度:
-- 1.數據庫層次進行驗證
-- 2.從Java層次進行驗證
-- 1.從數據庫角度進行驗證,從以下角度進行驗證
-- a.添加用戶信息
-- b.添加角色信息
-- c.關聯用戶角色信息
-- d.拓展如何將權限分層管理? 仔細思考,內心深處有那麼一個答案
-- 用戶信息添加 --
INSERT INTO USER(userName,address,createTime,modifyTime) VALUES('張三','黑龍江哈爾濱',NOW() ,NOW());
INSERT INTO USER(userName,address,createTime,modifyTime) VALUES('李四','蒙古呼蘭浩特',NOW(), NOW());
INSERT INTO USER(userName,address,createTime,modifyTime) VALUES('王五','黑龍江創業',NOW(),NOW());
ALTER TABLE USER AUTO_INCREMENT = 1
-- DELETE FROM USER WHERE id = 1
SELECT * FROM USER
-- 角色信息添加 --
INSERT INTO role(roleName,createTime) VALUE('超級管理員',NOW());
INSERT INTO role(roleName,createTime) VALUE('普通管理員',NOW());
INSERT INTO role(roleName,createTime) VALUE('高級經理',NOW());
INSERT INTO role(roleName,createTime) VALUE('店長',NOW());
INSERT INTO role(roleName,createTime) VALUE('店員',NOW());
SELECT * FROM role
-- DROP TABLE role
-- 用戶角色關聯信息添加 --
INSERT INTO user_role_associate(userid,roleid) VALUES(1,1001);
INSERT INTO user_role_associate(userid,roleid) VALUES(1,1002);
INSERT INTO user_role_associate(userid,roleid) VALUES(2,1003);
INSERT INTO user_role_associate(userid,roleid) VALUES(3,1004);
INSERT INTO user_role_associate(userid,roleid) VALUES(3,1005);
UPDATE user_role_associate SET createtime = NOW(),modifytime = NOW() WHERE id = 2001;
UPDATE user_role_associate SET createtime = NOW(),modifytime = NOW() WHERE id = 2002;
UPDATE user_role_associate SET createtime = NOW(),modifytime = NOW() WHERE id = 2003;
UPDATE user_role_associate SET createtime = NOW(),modifytime = NOW() WHERE id = 2004;
UPDATE user_role_associate SET createtime = NOW(),modifytime = NOW() WHERE id = 2005;
SELECT * FROM user_role_associate
查看原文 >>