Spring的切面操作

Spring AOP的簡單使用

主要功能

在指定一部分的controller前後執行同一邏輯

使用場景

日誌記錄、權限驗證等。

簡單使用步驟

  1. pom 添加依賴
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-aop</artifactId>
</dependency>
  1. 定義切入點
// 下面的切入點是com.package.class類裏面的全部方法
@Pointcut(value = "execution(* com.package.class.*(..))")
public void pointOffCut(){

}
  1. 在上一步的切入點上,添加需要執行的邏輯
@Around("pointOffCut()")
public Object doAround(ProceedingJoinPoint pip) throws Throwable {

	// 這裏可以執行切入的方法執行之前的一些邏輯,比如權限驗證
	// 獲取全部參數
	Object[] args = pip.getArgs();

	// 方式切入的方法本體,並返回結果
	Object res = pip.proceed();

	// 這裏可以執行切入的方法執行後的邏輯,比如記錄方法執行的時間

	// 將結果返回
	return res;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章