spring中新增aop註解的方式:
其中<
aop:pointcut>z中的
expression
引數的用法。
任意公共方法的執行:
execution(public* *(..))
任何乙個以
「set」
開始的方法的執行:
execution(*set*(..))
accountservice
介面的任意方法的執行:
execution(*com.xyz.service.accountservice.*(..))
定義在service
包裡的任意方法的執行:
execution(*com.xyz.service.*.*(..))
定義在service
包和所有子包裡的任意類的任意方法的執行:
execution(*com.xyz.service..*.*(..))
定義在pointcutexp
包和所有子包裡的
joinpointobjp2
類的任意方法的執行:
execution(*com.test.spring.aop.pointcutexp..joinpointobjp2.*(..))")
***>
最靠近(..)
的為方法名,靠近
.*(..))
的為類名或者介面名
,如上例的
joinpointobjp2.*(..))
pointcutexp
包裡的任意類.
within(com.test.spring.aop.pointcutexp.*)
pointcutexp
包和所有子包裡的任意類.
within(com.test.spring.aop.pointcutexp..*)
實現了myinte***ce
介面的所有類,如果
myinte***ce
不是介面,限定
myinte***ce
單個類.
this(com.test.spring.aop.pointcutexp.myinte***ce)
***>
當乙個實現了介面的類被
aop的時候,用
getbean
方法必須
cast
為介面型別
,不能為該類的型別.
帶有@mytypeannotation
標註的所有類的任意方法.
@within(com.elong.annotation.mytypeannotation)
@target(com.elong.annotation.mytypeannotation) 帶有
@mytypeannotation
標註的任意方法.
@annotation(com.elong.annotation.mytypeannotation)
***>@within
和@target
針對類的註解
,@annotation
是針對方法的註解
引數帶有
@mymethodannotation
標註的方法.
@args(com.elong.annotation.mymethodannotation)
引數為string型別(
執行是決定
)的方法.
args(string)
spring 3中新增的 value註解
在spring 3.0中,可以通過使用 value,對一些如 properties檔案 中的檔案,進行鍵值對的注入,例子如下 的命名空間,然後 2 3 建立test.properties abc 123 4 import org.springframework.beans.factory.annot...
spring 3中新增的 value註解
在 spring 3.0 中,可以通過使用 value 對一些如 properties 檔案 中的檔案,進行鍵值對的注入,例子如下 1 首先在 中加入 xsi schemalocation spring util 3.1.xsd 的命名空間,然後 2 3 建立test.properties abc ...
Spring中的註解
在對spring系列進行學習時,會在簡化xml的同時,遇到一些註解,一開始,我只是對這些註解進行搜尋和短暫的記憶,主要在理解程式上,但後來發現,必須對一些註解進行整合理解,下面是我在各 中搜尋到的註解給於的自己的理解。等同於spring的xml配置檔案 這個註解是是springboot根據我們所引入...