jeecg数据权限

简介: jeecg数据权限


1.新建角色

角色管理模块:

image.png

sys_role:角色表

1. SELECT
2.  id,
3.  role_name,
4.  role_code,
5.  description,
6.  create_by,
7.  create_time,
8.  update_by,
9.  update_time
10. FROM
11.   sys_role
12. ORDER BY
13.   create_time DESC
14. LIMIT ?,?

2.新建菜单

3.向角色中添加显示的菜单

image.png

1新增角色sys_role

1. INSERT INTO sys_role (
2.  id,
3.  role_name,
4.  role_code,
5.  description,
6.  create_by,
7.  create_time
8. )
9. VALUES
10.   (?, ?, ?, ?, ?, ?)

2.角色授权(支配的菜单)

生成sys_role_permission (角色菜单表)

1. INSERT INTO sys_role_permission (id, role_id, permission_id)
2. VALUES
3.  (?, ?, ?)

3.新建用户

1 插入用户表 sys_user

1. INSERT INTO sys_user (
2.  id,
3.  username,
4.  realname,
5.  PASSWORD,
6.  salt,
7.  birthday,
8.  sex,
9.  STATUS,
10.   del_flag,
11.   create_by,
12.   create_time,
13.   activiti_sync
14. )
15. VALUES
16.   (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)

2.插入 用户角色表 sys_user_role  (角色id和用户id是前台传来的)

1. INSERT INTO sys_user_role (id, user_id, role_id)
2. VALUES
3.  (?, ?, ?)

总结:

1. SELECT
2.  p.*
3. FROM
4.  sys_permission p
5. WHERE
6.  EXISTS (
7.    SELECT
8.      a.id
9.    FROM
10. -- a 角色 权限 菜单关联表
11.       sys_role_permission a
12. -- b 角色表
13.     JOIN sys_role b ON a.role_id = b.id
14. -- c 用户角色表
15.     JOIN sys_user_role c ON c.role_id = b.id
16. -- d 用户表 
17.     JOIN sys_user d ON d.id = c.user_id
18.     WHERE
19.       p.id = a.permission_id
20.     AND d.username = 'admin'
21.   )
22. AND p.del_flag = 0
23. ORDER BY
24.   p.sort_no ASC

image.png

1 用户表sys_user通过 id 关联用户角色表sys_user_role ---得到当前用户的角色

 2 用户角色表sys_user_role 通过角色id 关联 角色表 sys_role

 3 角色表id 与角色 权限 菜单表关联 查询出此人的菜单id

  总结关系  sys_user.id(用户) == sys_user_role.user_id(用户角色表)    然后产生分支

             1.sys_user_role.role_id (用户角色表)  = sys_role.id (角色表) 可以获得到角色的具体信息

             2.sys_user_role.role_id (用户角色表)  = sys_role_permission.role_id (角色 菜单表) 可以获取到当前角色的菜单



相关文章
|
8月前
|
SQL
若依框架---角色与权限
若依框架---角色与权限
429 0
|
8月前
|
SQL XML Java
若依框架 --- 使用数据权限功能
若依框架 --- 使用数据权限功能
892 0
|
8月前
|
JavaScript BI
基于jeecg-boot集成luckysheet记录
基于jeecg-boot集成luckysheet记录
83 0
|
5月前
|
SQL Java 数据库连接
springboot+mybatis+shiro项目中使用shiro实现登录用户的权限验证。权限表、角色表、用户表。从不同的表中收集用户的权限、
这篇文章介绍了在Spring Boot + MyBatis + Shiro项目中,如何使用Shiro框架实现登录用户的权限验证,包括用户、角色和权限表的设计,以及通过多个表查询来收集和验证用户权限的方法和代码实现。
springboot+mybatis+shiro项目中使用shiro实现登录用户的权限验证。权限表、角色表、用户表。从不同的表中收集用户的权限、
|
5月前
|
SQL 前端开发 Java
springboot项目中使用shiro实现用户登录以及权限的验证
这篇文章详细介绍了如何在Spring Boot项目中集成Apache Shiro框架来实现用户登录和权限验证,包括项目依赖配置、数据库连接、实体类定义、控制器、服务层、Mapper层以及前端页面的实现,并展示了实际效果和过滤器代码。
springboot项目中使用shiro实现用户登录以及权限的验证
|
SQL 关系型数据库 MySQL
springSecurity权限表设计
springSecurity权限表设计
172 0
springSecurity权限表设计
|
8月前
|
前端开发 Java 数据库
基于RBAC的权限模型+shiro+springboot实现的系统登陆权限认证模块
基于RBAC的权限模型+shiro+springboot实现的系统登陆权限认证模块
137 0
|
XML SQL Java
JeeSite 数据权限应用
JeeSite 数据权限应用
241 0
|
安全 Java Apache
Springboot整合shiro:实现用户登录和权限验证
Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。当然类型大家也可以使用spring security;因为我平时开发的项目都是中小型的,所以使用shiro对于业务来说已经够用了,那么下面是我整理的整合记录;
165 0
SSM如何整合Shiro实现权限登陆案例
SSM如何整合Shiro实现权限登陆案例
78 0