真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Spring框架中動(dòng)態(tài)代理的示例分析

這篇文章主要為大家展示了“Spring框架中動(dòng)態(tài)代理的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Spring框架中動(dòng)態(tài)代理的示例分析”這篇文章吧。

光澤網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、響應(yīng)式網(wǎng)站設(shè)計(jì)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)公司自2013年起到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。

之前我們已經(jīng)介紹了AOP相關(guān)的知識(shí),并且了解了spring是通過(guò)動(dòng)態(tài)代理的方式實(shí)現(xiàn)AOP邏輯的。在spring中動(dòng)態(tài)代理也分為兩種一種是JDK動(dòng)態(tài)代理,一種是CGLib動(dòng)態(tài)代理。下面我們看一下這兩種動(dòng)態(tài)代理的區(qū)別。我們首先看一下在沒(méi)有動(dòng)態(tài)代理時(shí),添加事物的的邏輯處理。

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

雖然上述代碼已經(jīng)實(shí)現(xiàn)了我們的邏輯,但是在上一篇中我們已經(jīng)介紹過(guò)了,上述代碼的問(wèn)題就是會(huì)有重復(fù)的有關(guān)事物的代碼添加到業(yè)務(wù)類(lèi)中,這樣很不方便維護(hù)。解決的辦法就是通過(guò)AOP方式來(lái)解決,下面我們分別采用JDK動(dòng)態(tài)代理和CGLib動(dòng)態(tài)代理技術(shù)來(lái)解決上述問(wèn)題。

  • JDK動(dòng)態(tài)代理

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

上述代碼就是采用JDK動(dòng)態(tài)代理技術(shù)實(shí)現(xiàn)AOP功能的,通過(guò)上述代碼實(shí)現(xiàn)AOP功能雖然比較簡(jiǎn)單,但是有一個(gè)弊端就是JDK代理只能支持接口類(lèi)型,也就是只能為接口提供動(dòng)態(tài)代理功能,而CGLib動(dòng)態(tài)代理則可以直接為類(lèi)創(chuàng)建代理類(lèi)。下面我們通過(guò)CGLib動(dòng)態(tài)代理實(shí)現(xiàn)上述功能。

  • CGLib動(dòng)態(tài)代理

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

Spring框架中動(dòng)態(tài)代理的示例分析

  • JDK動(dòng)態(tài)代理與CGLib動(dòng)態(tài)代理的區(qū)別

  1. JDK動(dòng)態(tài)代理只能為接口創(chuàng)建代理類(lèi),而CGLib動(dòng)態(tài)代理而可以直接為類(lèi)創(chuàng)建代理類(lèi)。

  2. JDK動(dòng)態(tài)代理創(chuàng)建代理類(lèi)的速度要比CGLib動(dòng)態(tài)代理創(chuàng)建代理類(lèi)的速度要快。

  3. CGLib動(dòng)態(tài)代理創(chuàng)建代理類(lèi)的性能要比JDK動(dòng)態(tài)代理創(chuàng)建代理類(lèi)的性能要高。

所以在為單例對(duì)象創(chuàng)建代理類(lèi)時(shí),因?yàn)椴恍枰l繁的創(chuàng)建代理對(duì)象,所以優(yōu)先考慮用CGLib動(dòng)態(tài)代理來(lái)創(chuàng)建,這樣該代理類(lèi)的執(zhí)行時(shí)的性能比較高,反之則采用JDK動(dòng)態(tài)代理創(chuàng)建代理類(lèi)。

以上是“Spring框架中動(dòng)態(tài)代理的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


當(dāng)前題目:Spring框架中動(dòng)態(tài)代理的示例分析
鏈接URL:http://weahome.cn/article/pdpdhg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部