基于aop注解形式和 mybatis-plus3.4.2实现数据权限控制

1、实现思路,通过ThreadLocal获取是否开启数据权限,开启则通过mybatis-plus的DataPermissionHandler实现数据权限

controller上添加的注解DataScope.java

package com.pojo.common.datascope.annotation;

import com.pojo.common.core.config.HkhjDataPermissionHandler;
import com.pojo.common.core.utils.DataScopeContext;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 数据权限过滤注解
 *
 * @author zsj
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface DataScope {
    /**
     * 部门数据权限查询列名
     */
    String deptId() default DataScopeContext.DEPT_ID;

    /**
     * 用户数据权限查询列名
     */
    String userSelf() default DataScopeContext.USER_SELF;
}

2、aop切面DataScopeAspect.java

package com.pojo.common.datascope.
上一篇:Mybatis学习笔记1


下一篇:插入数据:返回记录的id值