aop 自定義註解實現列印引數日誌 簡易版

2021-10-07 19:54:28 字數 1449 閱讀 7935

1:自定義註解

@documented

@retention

(retentionpolicy.runtime)

@target()

public @inte***ce

methodlog

執行時註解

作用域為方法上

註解引數: 0:列印入參+返回結果 1: 只列印入參

2: aop實現攔截註解列印引數

@aspect

@component

@slf4j

public

class

methodlogaspect

@afterreturning

(value =

"pointcut()"

,returning =

"result"

)public

void

afterreturn

(joinpoint joinpoint,object result)

string methodname = method.

getdeclaringclass()

.get******name()

+"."

+ method.

getname()

; log.

error

("方法名:"

+methodname)

;int type = annotation.

type()

; object[

] args = joinpoint.

getargs()

; log.

info

("入參:");

log.

info

(json.

tojsonstring

(args));

if(type ==0)

}catch

(exception e)

}}

afterreturning: 在方法return之前進入此aop, 可拿到該方法引數, 返回值等資訊

通過joinpoint 可拿到方法名, 註解, 引數

最後列印到log日誌系統中 測試

註解作用於service

postman引數

伺服器列印引數

AOP 自定義註解

compile org.springframework.boot spring boot starter aop aspect component public class auditaspect before weblog public void debefore joinpoint joinpo...

自定義註解AOP

專案中有些模組需要加入工作流審批流程,並且可以選擇是否開啟工作流。於是根據需求就想到了用aop做乙個通用的模組開關檢驗。如果模組沒有開啟工作流,就直接放行。如果開啟了工作流,就啟動該模組的工作流流程。下面上 target elementtype.method retention retentionp...

自定義AOP實現註解式redis快取

先說怎麼使用,超簡單 註解類 string desc default 描述 long expire default 60 快取過期時間 單位 秒 string key boolean param default false 快取key是否需要拼湊引數 無引數快取的 public listfindal...