標籤:
aspectj是一款優秀的面向切面的編程架構,下面就簡單介紹一下入門教程吧:
1、官網下載AspectJ的jar包,我這裡下的是最新版本1.8.7的。
2、因為AspectJ.jar 是一個可執行檔jar檔案,需要運行安裝
進入jar所在目錄,輸入命令 java -jar ***.jar:
3、進入安裝:
4、選擇next,會有如下提示,預設選擇電腦所安裝的jre:
5、選擇next,然後選擇安裝的目錄,自己得記住該目錄,到後面有用:
6、安裝完成後,有提示將lib中aspectjrt.jar添加進入classpath;
進入安裝的目錄,裡面有將要用的jar包庫lib檔案夾和包含可運行檔案的bin檔案夾:
添加aspectjrt.jar添加進入classpath:
7、進行aspectj的簡單測試:
(1)編寫測試所需要的類:A 、B 和主類Main:
1 public class A 2 { 3 public void hello(){ 4 System.out.println("測試第一個執行個體第一個方法"); 5 } 6 7 public void Hi(){ 8 System.out.println("測試第一個執行個體第二個方法"); 9 }10 11 }
1 public class B2 {3 public void greet(){4 System.out.println("測試的第二個類第一個方法");5 }6 }
1 public class Main 2 { 3 public static void main(String[] args) 4 { 5 A a = new A(); 6 B b = new B(); 7 8 a.hello(); 9 a.Hi();10 11 b.greet();12 }13 }
查看編譯執行的效果:
(2)編寫要添加進入目的函數的aspect:
第一個:
1 public aspect AuthAspect 2 {3 before():execution(void *.*()){4 5 System.out.println("類比記錄日誌");6 }7 }
用bin檔案夾中的ajc編譯AuthAspect,-d . *.java編譯目前的目錄所有java檔案把編譯後的檔案放在目前的目錄下:
第二個:
1 public aspect TransAspect 2 { 3 void around():execution(void *.*()){ 4 5 System.out.println("類比事物開始"); 6 7 proceed();//回呼函數 8 9 System.out.println("類比事物結束");10 }11 }
第三個:
1 public aspect LogAspect 2 {3 after():execution(void *.*()){4 5 System.out.println("******類比******");6 }7 }
AspectJ的簡單使用