1. 程式人生 > >Java許可權驗證

Java許可權驗證

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 ='使用者表'
  • 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;
  • 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.從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