Spring AOP的註解快速應用

2021-10-08 16:56:14 字數 1776 閱讀 9574

一、新建乙個類,aop用來增強該類的方法

package com.example.demo.aop;

import org.springframework.stereotype.component;

@component

public class aopservice

}

二、建立aop的註解,進行切面程式設計

package com.example.demo.aop;

import org.aspectj.lang.proceedingjoinpoint;

import org.aspectj.lang.annotation.*;

import org.springframework.stereotype.component;

@aspect

@component

public class myaopaspect

// 前置通知

@before("pointcut(id)")

public void before(int id)

// 環繞通知

@around("pointcut(id)")

public object aroundlog(proceedingjoinpoint joinpoint, int id) catch (throwable e)

return res;

}// 後置通知

@after("pointcut(id)")

public void after(int id)

// 方法執行完成

@afterreturning("pointcut(id)")

public void afterreturning(int id)

// 方法異常

@afterthrowing("pointcut(id)")

public void afterthrowinglog(int id)

}

–> pointcut的配置規則說明

三、測試

package com.example.demo;

import com.example.demo.aop.aopservice;

import org.junit.jupiter.api.test;

import org.junit.runner.runwith;

import org.springframework.beans.factory.annotation.autowired;

import org.springframework.boot.test.context.springboottest;

import org.springframework.test.context.junit4.springrunner;

@runwith(springrunner.class)

@springboottest

class mytest

}

四、相關依賴包

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-aop

org.springframework.boot

spring-boot-starter-test

test

基於註解的Spring AOP

spring aop 基本概念 url joinpoint api url 1.定義註解 target retention retentionpolicy.runtime documented public inte ce testannotation 2.定義切面 切面 aspect 在sprin...

SpringAOP的註解方式

aop 註解 理解 應用 重點 1.aop註解配置流程 a.開啟aop配置支援註解 aspectj 核心配置檔案中新增以下配置,功能等同於註解配置bean的自動掃瞄路徑 b.將所有參與aop配置的類宣告為spring控制的bean 可以使用xml配置格式或註解格式 c.在切面類的類定義上方新增切面的...

SpringAOP的註解方式

aop 註解 理解 應用 重點 1.aop註解配置流程 a.開啟aop配置支援註解 aspectj 核心配置檔案中新增以下配置,功能等同於註解配置bean的自動掃瞄路徑 b.將所有參與aop配置的類宣告為spring控制的bean 可以使用xml配置格式或註解格式 c.在切面類的類定義上方新增切面的...