shiro权限管理mysql_【笔记】SpringBoot+Shiro 实现简单权限管理(使用mysql数据库)

网上翻了好久 都没有SpringBoot+Shiro的入门教程 原本想看《跟我学Shiro》

然后发现这是从头开始 但是我就需要和SpringBoot整一块 不需要那么多的东西 感觉这个当参考书不错

于是东拼西凑终于整成了 把别人的教程上我用不到的都删了 该改的改 终于拿到了我理想中的效果

先是数据库部分 因为是简单的实现 就没有弄得太复杂

三部分 用户 -- 角色 -- 权限

四张表

用户和角色是多对一的关系(多对多懒得弄...)

角色和权限是多对多的关系(这个没啥好说的)

直接放代码了 那个url忽略就好了 完全没用上 我打算弄菜单的自动获取能访问的列表 这样就不用写死了

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

DROP TABLE IF EXISTStb_user;CREATE TABLEtb_user (

`id`INT PRIMARY KEY NOT NULLAUTO_INCREMENT,

`username`VARCHAR(50) NOT NULL UNIQUE KEY,

`password`VARCHAR(255) NOT NULL,

`role_id`INT NOT NULL,

`create_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,

`update_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP);DROP TABLE IF EXISTStb_role;CREATE TABLEtb_role (

`id`INT PRIMARY KEY NOT NULLAUTO_INCREMENT,

`name`VARCHAR(50) NOT NULL UNIQUE KEY,

`desc` VARCHAR(50) NOT NULL,

`create_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,

`update_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP);DROP TABLE IF EXISTStb_permission;CREATE TABLEtb_permission (

`id`INT PRIMARY KEY NOT NULLAUTO_INCREMENT,

`parent_id`INT,

`name`VARCHAR(50) NOT NULL UNIQUE KEY,

`desc` VARCHAR(50) NOT NULL,

`url`VARCHAR(255) NOT NULL DEFAULT '#',

`order_by`INT,

`type`INT NOT NULL DEFAULT 0,

`create_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,

`update_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP);DROP TABLE IF EXISTStb_role_permission;CREATE TABLEtb_role_permission (

`id`INT PRIMARY KEY NOT NULLAUTO_INCREMENT,

`role_id`INT NOT NULL,

`permission_id`INT NOT NULL,

`create_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,

`update_time`DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP);INSERT INTO tb_permission (`id`, `name`, `desc`, url, `order_by`, `type`)VALUES ('1', 'user:*', '用户管理', '/getAll', '1', '1');INSERT INTO tb_permission (`id`, `name`, `desc`, url, `order_by`, `type`)VALUES ('2', 'user:query', '查询用户', '#', '1', '1');INSERT INTO tb_permission (`id`, `name`, `desc`, url, `order_by`, `type`)VALUES ('3', 'user:insert', '新增用户', '#', '1', '1');INSERT INTO tb_permission (`id`, `name`, `desc`, url, `order_by`, `type`)VALUES ('4', 'user:update', '修改用户', '#', '1', '1');INSERT INTO tb_permission (`id`, `name`, `desc`, url, `order_by`, `type`)VALUES ('5', 'user:delete', '删除用户', '#'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值