使用註解和切面實現方法級許可權校驗

2021-09-13 22:12:10 字數 770 閱讀 6982

場景:

介面上有很多按鈕,然後需要控制許可權,有的部門可以按,有的部門不能按。

每個按鈕都對應了後端的乙個方法,因為按鈕眾多,來不及在前端做控制,

因此就控制了每個方法對應的後台方法。

1.建立乙個註解:

/**

* @author laixiaoxing

* @description 校驗方法的許可權

* @date 下午10:54 2019/3/24

*/@documented

@retention(retentionpolicy.runtime) //作用是在執行時

@target(value = ) //表明是方法級 加到方法上

public @inte***ce rolepermission

定義了註解 ,接下來就是使用註解

通過aop來攔截對應的方法,解析註解

@aspect

@component

public class roleaspect

使用例子

但是因為是使用了aop 所以千萬要注意切面的一些問題,比如說 同乙個類的方法互相呼叫,不會走切面

切面使用問題 獲取方法的註解內容為null

獲取操作型別說明 增加 刪除 修改等 param joinpoint return throws exception public static string getcontrollermethoddescription joinpoint joinpoint throws exception re...

使用註解和反射實現SpringIoC容器(簡潔版)

首先明確一下自己的需求 我們需要自定義一些註解,比如類似於spring的bean或者configuration註解,bean註解主要是放在方法上的,目的是將當前方法的返回值放入springioc容器中,configuration主要是用於識別當前類是乙個配置類的,註解定義好之後,就是利用反射實現,首...

利用註解和反射實現超輕量級許可權管理

專案中需要用到許可權管理,但是角色非常少,覺得使用spring security會比較重。所以,打算自己寫乙個簡單的角色檢查,實現原理就是 把使用者的資訊 一定要包含角色id 放到session裡,然後在controller方法上加註解,該註解會標記哪些角色可以訪問,通過aop反射解析註解,同時從s...