若依注解学习(二)@DataScope

@DataScope

作用:

一般写在service层的一些需要权限控制的业务方法上,针对部门和用户的权限,生成sql条件

dao层注入,实现数据权限的控制

位置:

common下的annotation包下

核心类:

DataScopeAspect

实现步骤:

设置切入点,@Before,任何加了该注解的方法

1.清空JoinPoint防止注入

2.安全框架中获取当前的用户信息,包括用户,部门,角色信息

3.判断是否管理员,非管理员进行处理

从注解获取权信息,进行过滤

遍历用户的role信息,添加权限

判断role的数据权限,生成sql条件append,or 。。。,添加到列表

添加到baseEntity的param

dao层 ${param.dataScope} 注入条件

相关推荐
Java爱好狂.5 分钟前
2025全年Java面试真题总结!
java·jvm·高并发·多线程·java面试·后端开发·java八股文
码力码力我爱你6 分钟前
C++性能基准测试
开发语言·c++
张人玉8 分钟前
C#WPF——MVVM框架编写管理系统所遇到的问题
开发语言·c#·wpf·mvvm框架
j***121511 分钟前
网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。
爬虫·学习·selenium
Charles_go24 分钟前
C#中级39、什么是依赖注入设计模式
java·设计模式·c#
ComplexPy27 分钟前
ZKMall-B2B2C Redission延时队列
java·redis
q***965827 分钟前
深入解析Spring Boot中的@ConfigurationProperties注解
java·spring boot·后端
java1234_小锋27 分钟前
讲讲Mybatis的一级、二级缓存?
java·开发语言·mybatis
e***877030 分钟前
记录 idea 启动 tomcat 控制台输出乱码问题解决
java·tomcat·intellij-idea
发现你走远了35 分钟前
2025 idea 指定配置环境运行springboot 设置active和env启动端口,多端口启动 (保姆级图文)
java·spring boot·intellij-idea