AspectJ切入點語法詳解

原文鏈接:http://jinnianshilongnian.iteye.com/blog/1415606 或者 點擊這裏

僅轉載核心指示符,指示符的具體用法請參見原文鏈接。

6.5.1  Spring AOP支持的AspectJ切入點指示符

       切入點指示符用來指示切入點表達式目的,,在Spring AOP中目前只有執行方法這一個連接點,Spring AOP支持的AspectJ切入點指示符如下:

         execution:用於匹配方法執行的連接點;

         within:用於匹配指定類型內的方法執行;

         this:用於匹配當前AOP代理對象類型的執行方法;注意是AOP代理對象的類型匹配,這樣就可能包括引入接口也類型匹配;

         target:用於匹配當前目標對象類型的執行方法;注意是目標對象的類型匹配,這樣就不包括引入接口也類型匹配;

         args:用於匹配當前執行的方法傳入的參數爲指定類型的執行方法;

         @within:用於匹配所以持有指定註解類型內的方法;

         @target:用於匹配當前目標對象類型的執行方法,其中目標對象持有指定的註解;

         @args:用於匹配當前執行的方法傳入的參數持有指定註解的執行;

         @annotation:用於匹配當前執行方法持有指定註解的方法;

         bean:Spring AOP擴展的,AspectJ沒有對於指示符,用於匹配特定名稱的Bean對象的執行方法;

         reference pointcut:表示引用其他命名切入點,只有@ApectJ風格支持,Schema風格不支持。

       AspectJ切入點支持的切入點指示符還有: call、get、set、preinitialization、staticinitialization、initialization、handler、adviceexecution、withincode、cflow、cflowbelow、if、@this、@withincode;但Spring AOP目前不支持這些指示符,使用這些指示符將拋出IllegalArgumentException異常。這些指示符Spring AOP可能會在以後進行擴展。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章