您好,登錄后才能下訂單哦!
Spring的AOP是什么?如何使用AOP?其實這些困擾都可以總結(jié)成一個問題,即AOP怎么用?其實要解決這個問題也不難,下面我們一起來看看AOP的使用方法。
AOP在百度百科的解釋意為:面向切面編程,通過預(yù)編譯方式和運行期間動態(tài)代理實現(xiàn)程序功能的統(tǒng)一維護的一種技術(shù)。AOP是OOP的延續(xù),是軟件開發(fā)中的一個熱點,也是Spring框架中的一個重要內(nèi)容,是函數(shù)式編程的一種衍生范型。利用AOP可以對業(yè)務(wù)邏輯的各個部分進(jìn)行隔離,從而使得業(yè)務(wù)邏輯各部分之間的耦合度降低,提高程序的可重用性,同時提高了開發(fā)的效率。
第一部分:什么是AOP
AOP: Aspect oriented Programming ?向切?編程/?向??編程
AOP是OOP(面向?qū)ο缶幊?的延續(xù),從OOP說起
OOP三?特征:封裝、繼承和多態(tài)
oop是?種垂直繼承體系
示例如下:我有3個類分別為Horse,Pig,Dog。3個類里面都有共同的方法,eat()和run(),那每個類里都有共同的代碼,為了代碼的重復(fù),我們可以把這3個類里共有的部分提取出來,放到另外一個類里,3個類分別繼承這個新類,這是這3個類的代碼就減少了很多重復(fù)的代碼,最后變成這樣
OOP編程思想可以解決?多數(shù)的代碼重復(fù)問題,但是有?些情況是處理不了的,?如下?的在頂級?類Animal中的多個?法中相同位置出現(xiàn)了重復(fù)代碼,OOP就解決不了
橫切邏輯代碼
橫切邏輯代碼存在什么問題:
AOP出場,AOP獨辟蹊徑提出橫向抽取機制,將橫切邏輯代碼和業(yè)務(wù)邏輯代碼分析
這里要說明下,不同樣式的格子代表不同的業(yè)務(wù)邏輯方法,這樣能更好的區(qū)分和解釋Aop的作業(yè)
代碼拆分容易,那么如何在不改變原有業(yè)務(wù)邏輯的情況下,悄?聲息的把橫切邏輯代碼應(yīng)?到原有的業(yè)務(wù)邏輯中,達(dá)到和原來?樣的效果,這個是?較難的
看完上述內(nèi)容,你們對Spring的AOP有進(jìn)一步的了解嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。