xml標頭檔案中加入:
xmlns:context=""
xsi:schemalocation="
/spring-context.xsd"
宣告哪些包下有註解(當有兩個以上的包時,用「,」隔開)
在demo類中加入@component
在方法上新增@pointcut 定義切點
@component
public class demo
}
相當於,如果@component後不加引數,bean的id就是類名首字母小寫,如果@component(「abc」),則id就相當於abc.
在通知類中
@component類被spring管理
@aspect相當於標籤
@component
@aspect
public class myadvice
}
測試類
public class test
}
輸出
[myadvice, demo, org.springframework.context.annotation.internalconfigurationannotationprocessor, org.springframework.context.annotation.internalautowiredannotationprocessor, org.springframework.context.annotation.internalrequiredannotationprocessor, org.springframework.context.annotation.internalcommonannotationprocessor, org.springframework.context.event.internaleventlistenerprocessor, org.springframework.context.event.internaleventlistene***ctory, org.springframework.aop.config.internalautoproxycreator]
before
demo.exe
使用註解實現AOP
1.匯入jar包 與用介面實現 的jar包相同 2.配置 a.將業務類和通知類納入springioc容器 b.在容器中開啟註解對aop的支援 c.將類使用註解方式 component 放入ioc容器中時,要將該類所在的包新增到掃瞄器中 3.編寫通知類 1.加入註解 aspect,不用再實現介面 但是...
使用AOP實現快取註解
半年前寫了乙個註解驅動的快取,最近提交到了github。快取大量的被使用在應用中的多個地方,簡單的使用方式就是 先查詢快取中是否存在資料,如果不存在或者快取過期再查詢資料庫,並將查詢的結果快取一段時間,快取key通常是入參的物件或者入參物件的某些屬性,有些時候還需要按照某種條件判斷是否快取。可以看到...
註解實現AOP
使用註解實現aop,注意版本問題,使用註解報錯要匯入m en依賴 dependency groupid j ax.annotation groupid artifactid j ax.annotation api artifactid version 1.3.2 version dependency...