国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Spring框架之我見(二)——代理模式

oneasp / 3058人閱讀

摘要:聊完了工廠模式,下面我們來說框架中的另一個核心設計模式代理模式。這里的外賣小哥就相當于是我們的代理。主要分為代理和代理。

聊完了工廠模式,下面我們來說Spring框架中的另一個核心設計模式——代理模式(Proxy Pattern)。
代理模式

大家可以先不用看概念,先舉個吃飯的例子:比如說我們想吃飯,我們可以選擇自己做飯吃、去飯店吃、叫外賣吃。如果我們選擇自己做著吃,我們就需要去買菜、做飯、吃飯、吃完飯還要刷碗。其實我們真正想做的就只有吃飯而已,其他的都是與業務無關,但是又不得不做的事。但是我們叫外賣就不一樣了,外賣小哥會把飯送到我們手里,吃完飯我們也不需要刷碗,直接把包裝扔掉就可以了,我們這里先不討論環保的問題。這里的外賣小哥就相當于是我們的代理。代理我們去飯店,或者買菜的過程。

有了代理我們就可以更專注于我們真正要做的事--吃飯。代理可以幫我們把一些臟活累活全都干了。
在我們寫代碼過程中那些是臟活累活呢?

舉個最簡單的例子:在JDBC中,當我們完成數據庫操作之后,我們還要關閉一堆Connection、Statement、ResultSet而且每個都還要判空,還要捕獲異常,要多麻煩有多麻煩。有了代理我們就可以把這些都交給代理去做,自己只做最核心的業務邏輯就可以了。

當然代理模式還有一些其他的用途:

日志管理;

事務控制;

權限管理;

那么有人就會問了:代理模式最終不是還是得我們自己實現嗎?既然這樣,我們直接將這些邏輯直接寫在代碼內部反而更簡單了呢?

這就涉及到兩種代理模式的分類:靜態代理動態代理。雖然他們的理論都是一致的,但是在實現方式上面卻迥然不同。
靜態代理: 每當我們想代理一個類,我們就要為這個類創建一個相應的代理類,讓它在我們的業務基礎上做一些瑣碎的事,但是這就像上面的朋友的疑問一樣,我們直接將這些邏輯直接寫在代碼內部反而更簡單。但是這并不代表靜態代理就是一無是處。至少他做到了,業務代碼與其他代碼的分離。并且靜態代理也是我們理解動態代理的基礎。
動態代理:通過Java反射的方式為一批具有相同代理邏輯的類動態的創建代理,這樣可以大大的提高了我們的開發的效率。主要分為JDK代理CGlib代理。但是它也有缺點,那就是實現太過于復雜。

但是Spring框架卻為我們克服了動態代理的缺點,使我們不需要在考慮動態代理的編寫,而是為我們自動生成動態代理,讓我們開發變得更加如魚得水。下一篇我們就直奔我們的主題具體聊聊我們的Spring框架,看它是如何做到的。

還是那句話,這里只是記錄我個人的理解,如果大家需要更加深入的了解可以參考菜鳥教程.

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/68185.html

相關文章

  • Spring框架我見(三)——IOC、AOP

    摘要:模塊負責的所有面向切面的功能。總結的統一管理,降低了對象之間的耦合對主流的框架提供了很好的集成支持提供眾多組件,事務管理,等具有高度可開放性,開發者可以自由選擇部分或全部主要使用工廠模式和代理模式。 聊完了Spring框架中最重要的兩種設計模式,我們來看一下Spring框架的模塊和結構圖。 Spring框架的結構 下圖是Spring官方給出的Spring框架的結構圖。 showImg(...

    khs1994 評論0 收藏0
  • Spring框架我見(六)——Spring Cloud

    摘要:系統中的各個微服務可被獨立部署,各個微服務之間是松耦合的。每個微服務僅關注于完成一件任務并很好地完成該任務。傳統架構升級困難。新的輕量級協議容器化的出現。熔斷處理在微服務出現問題時防止出現雪崩效應。 聊完Spring Boot,我們來看看Spring Boot最重要的一方面的應用——Spring Cloud。 Spring Cloud 再聊SpringCloud之前我們先聊聊微服務。 ...

    alighters 評論0 收藏0
  • Spring框架我見(一)——工廠模式

    摘要:相對于工廠模式,抽象工廠模式生產的對象更加具體,也更加豐富,但相對編碼也更加復雜。具體的抽象工廠模式的實現大家可以參考菜鳥教程。知道了工廠模式和抽象工廠模式的區別,請大家使用的時候應該根據具體的情況進行選擇。 大家好,今天給大家分享一些Spring的學習心得,在講Spring之前,先和大家分享Spring中核心的設計模式。 工廠模式 在聊概念之前我先問問大家:什么是工廠? 這個很簡單,...

    venmos 評論0 收藏0
  • Spring框架我見(五)——Spring Boot

    摘要:通過我們可以更輕松地入門,更簡單的使用的框架。團隊為了擺脫框架中各類繁復紛雜的配置,使用約定優于配置的思想,在基礎上整合了大量常用的第三方庫的開發框架。這里還要說的一點,的出現并不是單純的為了簡化開發,更是為做鋪墊。 說完了Spring 我們來聊聊Spring的進階版Spring Boot,如果你還不知道Spring Boot,那希望這篇文章能夠為你指明方向。 Spring Boot ...

    張巨偉 評論0 收藏0
  • Spring框架我見(四)——Spring MVC

    摘要:是結構在框架中的一種表現形式。這句話聽起來有點繞,我們可以看一下下面這張圖,大家可以吧容器中的理解為全局變量,吧容器中的理解為局部變量。在方法體中可以訪問局部變量和全局變量,但是在方法外,就只能訪問全局變量,是不能訪問局部變量的。 聊完了Spring,我們來看看Spring在web方面的應用Spring MVC。 MVC 首先我們來看什么是mvc? 大家知道在jsp里面也是可以寫jav...

    shiina 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<