Spring學習及總結19 為通知方法傳遞引數

2021-10-01 03:22:45 字數 2017 閱讀 3240

通知方法執行順序:

正常執行:

@before(前置通知)–> @after(後置通知)–> @afterreturning(正常返回)

異常執行:

@before(前置通知)–> @after(後置通知)–> @afterthrowing(方法異常)

try

catch

(bean***ception e)

finally

獲取通知方法的詳細資訊

@aspect

@component

public

class

logutils

//在目標方法執行之後執行

@afterreturning

(value =

"execution(public int com.hh.pojo.mymath.*(int,int))"

,returning =

"result"

)public

static

void

logreturn

(joinpoint joinpoint,object result)

//在目標方法出現異常時執行

@afterthrowing

(value =

"execution(public int com.hh.pojo.mymath.*(int,int))"

,throwing =

"exception"

)public

static

void

logexception

(joinpoint joinpoint,exception exception)

//在目標方法結束的時候執行

@after

("execution(public int com.hh.pojo.mymath.*(int,int))"

)public

static

void

logend

(joinpoint joinpoint)

}

public

class

mytest

}

@aspect

@component

public

class

logutils

;//在目標方法執行之前執行

//exception(訪問許可權符 返回值型別 方法簽名)

@before

("mypoint()"

)public

static

void

logstart

(joinpoint joinpoint)

//在目標方法執行之後執行

@afterreturning

(value =

"mypoint()"

,returning =

"result"

)public

static

void

logreturn

(joinpoint joinpoint,object result)

//在目標方法出現異常時執行

@afterthrowing

(value =

"mypoint()"

,throwing =

"exception"

)public

static

void

logexception

(joinpoint joinpoint,exception exception)

//在目標方法結束的時候執行

@after

("mypoint()"

)public

static

void

logend

(joinpoint joinpoint)

}

學習總結19

轉眼間一周的學習又匆匆過去,我們的考核也步入第一階段了尾聲,下一階段我們要進行的是重構我們的專案,將之前專案的一些問題解決,和將專案的功能變得更加貼近真實的流程,爭取做到將流程可以完整使用。近一階段的學習確實也經歷了許多的事情,專案的進行上也存在許多的磕磕絆絆,但是我們的方向都是一致的,相信大家也可...

Spring學習總結

xx list,arrays setmap properties null list setmap props xx xx xx xx xx 注意 autowiring能夠與顯式的wiring一起使用。初始化屬性 public inte ce pointcutpublic inte ce class...

Spring學習總結

注 我是參考 spring實戰 這本書的 一 2.1中我們要給juggler加乙個吟詩的功能,我們不可能說改變perform方法吧,那又有新的功能,我們又得改變這個方法,那再改變呢?頻繁的修改呢?我們不可能頻繁的修改這個方法。那再寫乙個poem介面,這樣子我們只要新的能夠吟詩的poticjuggle...