精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一個Bug,讓我發現了 Java 界的.AJ(錐)

開發 前端
AspectJ 其實也是 AOP 的一種實現技術,功能類似于攔截器,在集成在 IntelliJ IDEA 開發工具里。在使用 IntelliJ IDEA 編寫 AspectJ 代碼之前需要本機先安裝 AspectJ 工具包。

一、前言

話我放這,踩過的坑越多頭發越少!

說來也是奇怪,只要是學編程的,從初次接觸的 Java 到安裝 JDK、IDEA、MYSQL, 再到接觸 Spring、MyBatis、RPC、MQ,哪怕有時候在淺的坑也會跳進去嘗嘗鮮,一遍抓著頭發,一手點著鼠標也幾乎是你的常態。你的鍵盤里總是有很多被抓碎的頭發!

但,哪怕是抓了這么頭發,還是遇到了一個滿腦子都是騷操作的小伙。“傅哥,我的切面怎么攔截不到?我是照著你的《SpringBoot 中間件設計和開發》專欄寫的,你給我看看吧,我都弄了一天了”

接下來我帶著大家一起看看什么是快樂星球,他是怎么一頓騷操作讓切面攔截不到的!

二、滿腦子都是騷操作

1. 遇到問題

上周,謝飛機(化名)發過來了自己的手擼的中間件源碼,說這代碼都沒有啥怎么就不能切面呢?

最開始我大意了,讓謝飛機發了一些代碼截圖。

看截圖的代碼,這完全就和我寫的中間件里的代碼一毛一樣,沒啥問題呀,包路徑也能掃描到,咋就不能切面了?

我說你打個斷點調試下,看看怎么切不到了呢?嘿,調試了,直接通過,就是沒切面到。

此時我思考了JDK版本、環境配置、Spring上下文、切面的定義、包的路徑以及這小子是否忽悠我?

最后我抱著這小子忽悠我的心里,把源碼要過來了。

2. 發現問題

看了幾遍源碼沒發現問題,開始調試,還真它哈拉哨的不進這個切面,接下來;

謝飛機的源碼保留,復制出來一份新的。

我的目的要先讓他跑起來,在研究。接下來我把自己的工程里的 DoJoinPoint拷貝過來粘貼進去,噗察一下貼進去了,沒提示替換,雖然有報錯但兩個類能共存,如下:這就神奇了哈,我當時懷疑是不它那 DoJoinPoint不是一個正經 Java 類,路徑不對?有看不見的特殊字符?

既然發現這個類不對,那行先刪掉。讓程序先跑起來,確保除了這個類其他的內容沒有問題,這樣也好排查問題。

還別說,去掉這個錯誤類,程序可以正常運行,攔截到切面內容了。

既然程序能跑了,我就想著這可以看看問題出在哪了,沒想到就只打開個文件夾,就發現了一個神奇的AJ!這貨壓根就不是 Java 類!

3. 排查問題

要不是IDEA把 .aj 這貨顯示成 C 類的圖標,可能早就發現問題了。緊接著把這錯誤類的截圖發給了謝飛機,問它你是怎么創建的?他說實話了

謝飛機先說自己偷懶了,哈哈哈,讓人怪不好意思的!

他說在創建 DoJoinPoint時,看到一個 Aspect 的選項,以為這個就是創建切面的快捷操作,如圖;

創建完成以后發現有點不對,不是 class 類型的,是個 aspect,于是他手動把 aspect 改成了 class,如圖;

所以,謝飛機實際創建出來的是一個 aspect 的以 .aj結尾的類,并不是一個正經的 Java 類,所以切面不到,也根本沒有對應的 class 文件。

三、如何正確使用 Aspect 的 .aj 類

AspectJ,簡稱 AJ 我自己說的

AspectJ 其實也是 AOP 的一種實現技術,功能類似于攔截器,在集成在 IntelliJ IDEA 開發工具里。在使用 IntelliJ IDEA 編寫 AspectJ 代碼之前需要本機先安裝 AspectJ 工具包。否則你的 .aj 類不能運行,同時IDEA類顯示出來的 .aj 類,也是C的標識

接下來我們就來聊聊關于這個東西怎么使用,別再被 .aj 騙了。

1. 安裝 AspectJ

在使用 AspectJ 之前,需要去官網下載一個安裝包,地址:https://www.eclipse.org/aspectj/downloads.php 如果官網下載的很慢,可以從我提供的源碼中獲取,也可以從其他途徑搜索下載 aspectj-1.9.4.jar

下載完成安裝;

  • 雙擊安裝
  • 命令安裝 java -jar aspectj-1.9.4.jar
  • 配置說明:沒有配置,傻瓜式下一步就可以了

默認配置安裝完成以后會在C盤創建出一個文件夾 C:\aspectj1.9,包括:bin、doc、lib等,后面我們就會使用到這些內容。

2. AspectJ 插件

在專業版 IDEA 中開發 AspectJ,需要安裝以下兩個插件:

Spring AOP/@AspectJ

AspectJ Support

3. 添加依賴 aspectjrt.jar

開始之前需要在項目中添加 aspectjrt.jar 依賴,aspectjrt.jar 即 AspectJ 安裝目錄中lib目錄下的jar包。你可以復制到工程中引入,也可以直接引入

在工程上鼠標右鍵,點擊 Open Module Setting 打開 Project Structure

點擊 Libraries 選項卡,和上面的 + 號,創建 New Project Library

選擇 C:\aspectj1.9\lib\aspectjrt.jar路徑,點擊即可配置完成

4. 配置AspectJ編譯器

IDEA 默認使用 javac 編譯器,這里需要配置 AspectJ 的編譯器 ajc,在 IDEA 中做相應配置。

打開 IDEA -> File -> Settings對話

選擇 Build,Execution,Deployment -> Compiler -> Java Compiler

Use complier:選擇 Ajc

在 Path to aspectjtools.jar里配置路徑C:\aspectj1.9\lib\aspectjtools.jar

5. 案例測試

創建 Aspect 類

public aspect DoAspect {

pointcut logPointcut():call(* ApiTest.hi(..));

void around():call(void ApiTest.hi(..)){
System.out.println("call 開始...");
proceed();
System.out.println("call 結束...");
}

before(): logPointcut(){
System.out.println("方法執行 before");
}

after(): logPointcut(){
System.out.println("方法執行 after");
}

}

測試類

public class ApiTest {

public void hi(){
System.out.println("Hi Aspect");
}

public static void main(String[] args) {
ApiTest apiTest = new ApiTest();
apiTest.hi();
}

}

測試結果

call 開始...
方法執行 before
Hi Aspect
call 結束...
方法執行 after

Process finished with exit code 0

到這,才是一個關于 Aspect 類的正確打開方式,關于 Aspect 的使用也可以嘗試搞搞,此篇還只是關于此類切面寫法的一個入門。

四、總結

你的代碼越粗獷、越豪放、越騷氣,幾乎你遇到的問題也是越多的,可能就是因為沒有遵守一定的研發執行規范,所以遇到的這些有點傻的問題,幾乎會浪費掉你一個上午或者一天。

但有些時候如果你能認真對待你弄出來的bug,深入分析下它是如何產生的,并把它復現出來一點點深入研究下,可能也會得到意想不到的收獲,也說不定。所以凡是認真,凡事沒有壞事。

關于切面、關于源碼、關于開發,可能并不應該只注重于功能實現,甚至有時候要想辦法逃離日復一日沒有成長的工作內容。多在那些有價值的技術上下功夫,那你的收獲也是最多的。?

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2021-04-22 07:47:47

JavaJDKMYSQL

2024-05-20 08:25:55

2021-10-29 11:45:26

Python代碼Python 3.

2025-05-19 10:04:48

2023-05-17 00:22:15

2022-04-06 08:47:03

Dubbo服務協議

2021-04-28 14:31:35

Dubbo接口日志

2021-06-02 08:00:57

WebAsyncTas項目異步

2020-05-18 08:42:23

CSS背景圖像前端開發

2022-05-16 08:42:26

Pandasbug

2018-01-29 21:56:28

Bug程序程序員

2023-02-26 01:02:22

2024-10-23 16:11:07

調試bug定位

2021-12-29 19:20:41

數據GitHub服務器

2021-09-13 08:41:52

職場互聯網自閉

2020-04-01 08:40:44

Vue.jsweb開發

2016-12-14 10:00:44

數據結構編譯器

2024-06-03 11:43:55

2017-10-10 15:14:23

BUGiOS 11蘋果

2019-01-14 11:10:43

機器學習人工智能計算機
點贊
收藏

51CTO技術棧公眾號

国产精品最新在线观看| 一区二区成人av| 无码播放一区二区三区| 黄色片在线看| 国产尤物一区二区在线| 欧美极品美女视频网站在线观看免费| 日本黄色动态图| 国产精品久久久久久吹潮| 亚洲免费色视频| 欧美激情www| av免费观看网址| 久久久蜜桃一区二区人| 久热精品视频在线| 亚洲精品国产一区黑色丝袜| 99精品国产九九国产精品| 精品国产91久久久| 日本道在线视频| 国产剧情在线观看| fc2成人免费人成在线观看播放 | 天堂av中文在线观看| 国产精品免费av| 久久久久久久久一区| 国产叼嘿视频在线观看| 蜜臀av性久久久久av蜜臀妖精| 国产+成+人+亚洲欧洲| 午夜国产小视频| 深爱激情综合| 日韩成人久久久| 波多野结衣三级视频| 久久国产三级| 日韩欧美在线中文字幕| 国产激情片在线观看| av在线播放av| 国产亚洲精品7777| 久久久精品动漫| 丰满人妻熟女aⅴ一区| 精东粉嫩av免费一区二区三区| 国产成人aa精品一区在线播放 | 成人免费网址| 欧美激情自拍偷拍| 欧美久久久久久久| 色av男人的天堂免费在线| 成人夜色视频网站在线观看| 亚洲伊人久久综合| 国产成人三级一区二区在线观看一| 久久国产综合精品| 国产精品视频在线观看| 日韩中文字幕高清| 天堂va蜜桃一区二区三区| 国产69久久精品成人| 日产欧产va高清| 在线高清一区| 午夜欧美不卡精品aaaaa| xxxx 国产| 亚洲另类黄色| 日本成人激情视频| 亚洲 日本 欧美 中文幕| 肉丝袜脚交视频一区二区| 国产99在线|中文| av首页在线观看| 免费的成人av| 91精品一区二区| 精品人妻一区二区三区换脸明星 | 日韩电影在线免费| 国产精品香蕉国产| aaa一区二区| 粉嫩在线一区二区三区视频| 国产一区二区三区四区hd| 天堂中文字幕av| 久久久久成人黄色影片| 亚洲欧美日韩综合一区| 老司机福利在线视频| 一区二区三区在线视频观看| 久久久久久久久久网| 182在线视频观看| 色婷婷av一区| aaa一级黄色片| 激情av综合| 亚洲毛片在线观看| 欧美大片xxxx| 夜夜嗨一区二区三区| 国产成人精品久久二区二区91| 中文字幕你懂的| 国产成人午夜高潮毛片| 九九九九精品| 麻豆网站在线看| 午夜精品视频一区| 亚洲色图久久久| 日韩一区二区三区精品视频第3页| 亚洲国产精品资源| 国产精品av久久久久久无| 自拍偷拍欧美专区| 性欧美视频videos6一9| 在线免费观看一级片| 国产成人8x视频一区二区| 欧美精品一区二区三区在线看午夜| 欧美日韩欧美| 精品久久久久久国产91| 亚洲一级免费观看| 农村少妇一区二区三区四区五区| 色偷偷av一区二区三区乱| 久草福利资源在线观看| 日韩影院精彩在线| 国产无套精品一区二区| 午夜免费福利在线观看| 精品久久久久久久久久久| 国产三级国产精品国产专区50| h视频久久久| 色婷婷综合成人av| 中文字幕精品无码一区二区| 国产一区二区电影| 香蕉久久免费影视| 两个人看的在线视频www| 欧美一区二区高清| 亚洲精品一区二区三区影院忠贞| 精品二区视频| 成人深夜直播免费观看| 国产福利在线视频| 欧美日韩人人澡狠狠躁视频| 亚洲午夜精品在线观看| 日韩一区二区在线| 国产脚交av在线一区二区| 人妻无码中文字幕| 一级中文字幕一区二区| 自拍偷拍一区二区三区四区| 你懂的视频欧美| 98精品国产高清在线xxxx天堂| www.xxx国产| 亚洲柠檬福利资源导航| 亚洲综合欧美激情| 国产尤物久久久| 日本aⅴ大伊香蕉精品视频| 人妻一区二区三区四区| 亚洲一区二区影院| 中文字幕欧美视频| 一区二区三区四区日韩| 91精品免费看| 成人欧美在线| 欧美一二三四区在线| 91高清免费看| 国产一区二区精品久久91| 在线视频不卡一区二区| 国产不卡精品| 久久国产精品久久国产精品| 99在线观看精品视频| 亚洲精品乱码久久久久久黑人| 国产又粗又长又爽又黄的视频| 四虎成人av| 91美女片黄在线观| 深夜国产在线播放| 欧美成人高清电影在线| 久一区二区三区| 成人教育av在线| 黄色免费视频大全| 精品一区免费| 国产精品一二区| 老司机午夜在线| 日韩欧美一卡二卡| 国产精品第56页| 99久久精品免费看| 亚洲国产精品毛片av不卡在线| 欧美日韩爱爱| 国产精品永久在线| 午夜小视频福利在线观看| 日韩午夜在线播放| 男女视频免费看| 国产亚洲精品aa| 制服丝袜中文字幕第一页| 亚洲网色网站| 国模一区二区三区私拍视频| 搜成人激情视频| 最近中文字幕mv在线一区二区三区四区| 中文字幕黄色av| 亚洲免费视频中文字幕| 人妻无码中文久久久久专区| 日韩精品一二三四| 做爰高潮hd色即是空| 大桥未久女教师av一区二区| 日本在线精品视频| 欧美成人hd| 亚洲国产精品视频在线观看| 无码人妻黑人中文字幕| 亚洲欧美日韩在线不卡| 一本色道综合久久欧美日韩精品| 日本不卡一区二区三区| 欧美 日韩 国产精品| 九九在线精品| 亚洲a∨日韩av高清在线观看| 麻豆蜜桃在线观看| 精品久久国产精品| 亚洲AV第二区国产精品| 欧美日韩精品免费| 国产午夜小视频| 亚洲国产高清aⅴ视频| 乱码一区二区三区| 蜜桃视频免费观看一区| 奇米精品一区二区三区| 香蕉国产精品| 欧美不卡福利| 北条麻妃一区二区三区在线| 国产精品高潮粉嫩av| ririsao久久精品一区| 最近2019中文免费高清视频观看www99| 高潮一区二区三区乱码| 欧美日韩国产美| 国产成人精品777777| 一区二区三区产品免费精品久久75| 久久精品国产亚洲av久| 成人免费观看av| 日韩精品视频网址| 免费av成人在线| 妺妺窝人体色www在线小说| 在线看片不卡| 一区二区三区四区国产| 九九热爱视频精品视频| 国产精品一区在线播放| 成人动漫视频在线观看| 国产精品成人va在线观看| caoporn视频在线观看| 久久国产精品免费视频| 色三级在线观看| 国产亚洲欧美日韩一区二区| 天天爱天天干天天操| 欧美一区二区国产| 国产乱淫a∨片免费观看| 欧美最猛黑人xxxxx猛交| 国产高潮久久久| 欧美日韩亚洲一区二| 精品视频一区二区在线观看| 亚洲色图.com| 成年人午夜剧场| 亚洲欧洲色图综合| 美女福利视频网| 国产精品久久免费看| 国产熟女一区二区| 国产视频911| 久久久久久久久久久久| 国产亚洲欧洲997久久综合| 久久一区二区电影| 91视频xxxx| 久久无码人妻精品一区二区三区| eeuss鲁片一区二区三区在线观看| 师生出轨h灌满了1v1| 国产成人免费在线观看不卡| wwwxxxx在线观看| 成人福利电影精品一区二区在线观看| 亚洲性图第一页| 成人精品视频一区二区三区尤物| 午夜免费福利影院| 北岛玲一区二区三区四区| 欧美一区二区免费在线观看| a在线欧美一区| 国产中年熟女高潮大集合| 久久久久综合网| 免费在线观看a视频| 国产清纯白嫩初高生在线观看91 | 国产精品久久久久久五月尺| **欧美日韩在线观看| 国产精品视频自拍| 国产精品日本一区二区三区在线| 1卡2卡3卡精品视频| 超碰在线一区| 欧美日韩电影一区二区| 久久国产成人午夜av影院宅| 最新黄色av网站| 在线观看视频免费一区二区三区| 国产成人a亚洲精v品无码| 三级影片在线观看欧美日韩一区二区| 国产免费又粗又猛又爽| 精品亚洲porn| 成人在线视频免费播放| 国产视频视频一区| 欧美性猛交xxxxx少妇| 天天综合色天天| 欧美日韩在线视频播放| 3atv一区二区三区| 色噜噜一区二区三区| 亚洲石原莉奈一区二区在线观看| 在线观看黄av| 久久久亚洲精品视频| 三级成人黄色影院| 成人亚洲激情网| 牛牛视频精品一区二区不卡| 台湾成人av| 国模一区二区三区| 在线观看高清免费视频| 国产乱对白刺激视频不卡| 野外性满足hd| 亚洲图片激情小说| 久久久久亚洲av成人毛片韩| 欧美三级日韩在线| 人人妻人人澡人人爽人人欧美一区| 亚洲欧美国产精品专区久久| 18av在线视频| 国产精品爽爽爽爽爽爽在线观看| 精品国产午夜肉伦伦影院| 亚洲欧洲久久| 性欧美长视频| 亚洲成人激情小说| 国产精品污污网站在线观看| 久久精品视频国产| 欧美日韩www| 国产精品秘入口| 韩国视频理论视频久久| 亚洲精品乱码日韩| 最近更新的2019中文字幕| 97在线观看免费视频| 香蕉久久网站| 国产精品亚洲αv天堂无码| 国产精品一区免费在线观看| 婷婷色一区二区三区| 一区二区三区av电影| 91极品身材尤物theporn| 亚洲精品日韩在线| a级片在线免费| 亚洲自拍另类欧美丝袜| 区一区二视频| 欧美私人情侣网站| 99riav一区二区三区| 欧美成人精品欧美一级私黄| 欧美日韩国产一级| 国产女人在线视频| 日本中文字幕不卡免费| 精品丝袜久久| 国产曰肥老太婆无遮挡| 国产在线日韩欧美| 可以免费看av的网址| 91成人免费在线| 成人性爱视频在线观看| 欧美专区福利在线| 色综合久久中文| 欧美激情 国产精品| 成人一道本在线| 国产一级特黄a高潮片| 日韩视频一区二区三区在线播放| 麻豆传媒视频在线| 成人在线视频网站| 国产国产精品| 中文字幕一区久久| 亚洲色图欧洲色图| av网站在线免费看| 久久91精品国产91久久跳| 久久国产精品免费一区二区三区| 在线亚洲美日韩| 国产乱理伦片在线观看夜一区| 国产免费一区二区三区四区| 欧美美女一区二区| 国产激情视频在线| 99在线视频免费观看| 国精品一区二区三区| 性久久久久久久久久久| 黄色精品一区二区| 毛片网站在线观看| 国产精品男人爽免费视频1| 第一会所亚洲原创| 国产毛片久久久久久| 亚洲精品日韩专区silk| 国产成人自拍一区| 2019精品视频| av中字幕久久| av噜噜在线观看| 亚洲最新视频在线观看| 日本亚洲一区| 国产精品看片资源| 在线电影一区二区| 99精品一区二区三区无码吞精| 黑人欧美xxxx| 69久久夜色| 高清一区二区三区视频| 制服诱惑一区二区| 精品一区二区6| 日韩欧美国产一二三区| 在线日韩影院| 中文字幕中文字幕在线中心一区| 国产成人av资源| 国产一级片毛片| 久久视频在线视频| 日本午夜精品久久久| 国产一线二线三线在线观看| 亚洲欧美色一区| 全色精品综合影院| 亚洲一区二区日本| 国产日韩欧美一区| 中文字幕无码日韩专区免费| 精品女同一区二区| 天然素人一区二区视频| 成年丰满熟妇午夜免费视频| 91免费观看视频在线| 亚洲永久精品视频| 国内精品免费午夜毛片| 日韩精品一区二区三区免费观看| 亚洲AV成人精品| 欧美亚一区二区| brazzers在线观看| 亚洲高清视频在线观看| aa级大片欧美| 国产老女人乱淫免费| 欧美洲成人男女午夜视频| 欧美三级视频| 国产馆在线观看|