IntelliJ IDEA中AspectJ外掛的安裝及使用

來源:酷知科普網 7.69K

AspectJ是AOP的一種實現技術,IntelliJ IDEA是一款整合開發工具。在使用IntelliJ IDEA編寫AspectJ程式碼之前需要本機先安裝AspectJ,具體的安裝步驟可以參考小編的其他文章。AspectJ的功能類似於攔截器,這是一種切面技術,我們可以使用AspectJ切入滿足切點規則的所有方法,並在方法的執行前後加一些通用的處理,下面跟著小編一起去學習吧。

工具/材料

IntelliJ IDEA

操作方法

首先我們開啟IntelliJ IDEA開發工具,在選單欄點選File-->Settings-->Plungins,進入到外掛管理的頁面。接下來我們在右側的搜尋框輸入Aspect查詢,下圖在輸入到Asp時便會模糊查詢出結果,我們將AspectJ Support和Spring AOP/@AspectJ後面的方框勾選上即可。

IntelliJ IDEA中AspectJ外掛的安裝及使用
IntelliJ IDEA中AspectJ外掛的安裝及使用 第2張

接下來我們按住Ctrl+Shift+Alt+S,或者點選下圖中所示的圖示進入到Project Structure頁面,點選Project Settings下方的Libraries,然後點選"+"號,最後選擇Java,在接下來彈出的頁面中選擇這個jar包。

IntelliJ IDEA中AspectJ外掛的安裝及使用 第3張
IntelliJ IDEA中AspectJ外掛的安裝及使用 第4張
IntelliJ IDEA中AspectJ外掛的安裝及使用 第5張

接下來再回到Project Structure下方的Libraries設定,選擇需要應用AspectJ的工程,然後點選“OK”按鈕即可。

IntelliJ IDEA中AspectJ外掛的安裝及使用 第6張

接下來進入到真正使用的部分了,我們首先建立一個Aspect切面,類似於建立一個類。在IntelliJ IDEA的選單中點選“New”,新建一個Aspect。我們給這個切面取個名字MyAspectJ,注意下方的kind類別是Aspect,這裡生成的aspectJ檔案是字尾的,而不是s字尾的,這一點希望大家注意。

IntelliJ IDEA中AspectJ外掛的安裝及使用 第7張
IntelliJ IDEA中AspectJ外掛的安裝及使用 第8張

生成的aspectJ檔案是字尾的,所以原來的編譯工具javac便不能使用了,因此我們需要修改編譯工具。選單欄點選File-->Settings-->搜尋Compile,結構為Build,Execution,Deployment-->Compiler-->Java Compiler。我們右側將Use Compiler修改為Ajc,在Path to Ajc compiler中選擇安裝目錄下的。

IntelliJ IDEA中AspectJ外掛的安裝及使用 第9張
IntelliJ IDEA中AspectJ外掛的安裝及使用 第10張
IntelliJ IDEA中AspectJ外掛的安裝及使用 第11張

以上編譯工具也設定完了,我們開始編寫程式碼了。首先我們寫一個入門的HelloWorld類,該類中有一個需要被AspectJ切面攔截的方法sayHello(),還有一個main方法用於執行程式。

IntelliJ IDEA中AspectJ外掛的安裝及使用 第12張

然後我們再完善上面建立的MyAspectJ,建立pointcut切點,注意該寫法是aspectJ特有的語法。pointcut表示定義的是一個切點,logPointCut()是切點的名字,call()裡面是需要攔截的,* 標識返回值是任意型別,然後是類名.方法名(),..表示任意型別的引數。我們定義before()和after()這兩個前置和後置攔截,分別用於在別攔截方法的前後執行。

IntelliJ IDEA中AspectJ外掛的安裝及使用 第13張

最後在HelloWorld類執行main方法啟動程式,我們看一下執行的結果,可以看到在sayHello()方法的執行前後分別執行了攔截。

IntelliJ IDEA中AspectJ外掛的安裝及使用 第14張

特別提示

字尾的檔案必須要使用Ajc的編譯器,javac不可以編譯。

熱門標籤