springboot AOP配置


在Springboot中添加AOP配置分兩步:

最近學習AOP ,記錄一下,雖然很多名字不太清楚,但是問題不大

1:在pom.xml中添加AOP依賴

2:建一個AOP配置類

 

 下面來看下代碼是怎么實現的:

1:在pom.xml中添加AOP依賴

<!--引入AOP依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>

 

2:建一個AOP配置類,我的類名是 MyAspect

package com.yyy.config; import org.aspectj.lang.annotation.*; import org.springframework.stereotype.Component; /** * @auther YueYangyang * @date 2020/7/4 15:41 */ @Aspect @Component public class MyAspect { @Pointcut("execution(* com.yyy.service.*.*(..))") public void Aspect(){ System.out.println("這是切面aop"); } @Before("Aspect()") public void beforeAspect(){ System.out.println("這是切面aop  前置方法"); } @After("Aspect()") public void afterAspect(){ System.out.println("這是切面aop  后置方法"); } @AfterReturning("Aspect()") public void afterReturningAspect(){ System.out.println("這是切面aop  后置方法 回調方法"); } @AfterThrowing("Aspect()") public void afterThrowingAspect(){ System.out.println("這是切面aop  異常處理方法"); } }

 

其中  @Pointcut("execution(* com.yyy.service.*.*(..))") 是什么意思呢?它表示調用 com.yyy.service 路徑下的所有方法 都會執行下 Aspect 方法,

@Before("Aspect()")   Before注解的意思是在 Aspect() 方法執行前執行

@After("Aspect()")   Before注解的意思是在 Aspect() 方法執行后執行等等。記提看代碼上面 有寫

 

 

為了方便理解 ,我把com.yyy.service 下面的代碼貼出來

package com.yyy.service;

import com.yyy.pojo.User;
import org.springframework.stereotype.Service;

@Service
public interface UserService {
    User queryById(User user);
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM