国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Spring中常見的設(shè)計模式

這篇具有很好參考價值的文章主要介紹了Spring中常見的設(shè)計模式。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

使用設(shè)計模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性、程序的重用性、更具有靈活、優(yōu)雅,而Spring中共有九種常見的設(shè)計模式

工廠模式

工廠模式(Factory Pattern)是 Java 中最常用的設(shè)計模式之一。這種類型的設(shè)計模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對象的最佳方式。在工廠模式中,我們在創(chuàng)建對象時不會對客戶端暴露創(chuàng)建邏輯,并且是通過使用一個共同的接口來指向新創(chuàng)建的對象。

簡單來講,就是有一個類的工廠,工廠里面專門生產(chǎn)類的方法,有了這個工廠后,我們就可以直接去工廠獲取類,而不是自己創(chuàng)建。Spring 中的BeanFactory就是工廠模式的體現(xiàn),通過getBean方法來獲取Bean對象。

單例模式

單例模式(Singleton Pattern)是 Java 中最簡單的設(shè)計模式之一。這種類型的設(shè)計模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對象的最佳方式。 這種模式涉及到一個單一的類,該類負責創(chuàng)建自己的對象,同時確保只有單個對象被創(chuàng)建。這個類提供了一種訪問其唯一的對象的方式,可以直接訪問,不需要實例化該類的對象。

在Spring中的bean默認使用單例,我們也可以手動設(shè)置scope改變bean的狀態(tài) 。Spring注冊bean過程中使用DDC單例模式,首先從緩存singletonObjects中獲取bean實例,如果為null,對singletonObjects加鎖,然后從緩存中獲取鎖,如果還是為null,就創(chuàng)建bean。這樣雙重判斷,能夠避免在加鎖的瞬間,有其他依賴注入引發(fā)bean實例的創(chuàng)建,從而造成重復創(chuàng)建的結(jié)果。

代理模式

在代理模式(Proxy Pattern)中,一個類代表另一個類的功能。這種類型的設(shè)計模式屬于結(jié)構(gòu)型模式。在代理模式中,我們創(chuàng)建具有現(xiàn)有對象的對象,以便向外界提供功能接口。

代理又分靜態(tài)代理和動態(tài)代理,熟悉Spring AOP的,應(yīng)該了解AOP基于動態(tài)代理實現(xiàn)的,分JDK和CGlib動態(tài)代理(JdkDynamicAopProxy和CglibAopProxy)

原型模式

原型模式(Prototype Pattern)是用于創(chuàng)建重復的對象,同時又能保證性能。這種類型的設(shè)計模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對象的最佳方式。這種模式是實現(xiàn)了一個原型接口,該接口用于創(chuàng)建當前對象的克隆。當直接創(chuàng)建對象的代價比較大時,則采用這種模式。例如,一個對象需要在一個高代價的數(shù)據(jù)庫操作之后被創(chuàng)建。我們可以緩存該對象,在下一個請求時返回它的克隆,在需要的時候更新數(shù)據(jù)庫,以此來減少數(shù)據(jù)庫調(diào)用。

策略模式

在策略模式(Strategy Pattern)中,一個類的行為或其算法可以在運行時更改。這種類型的設(shè)計模式屬于行為型模式。在策略模式中,我們創(chuàng)建表示各種策略的對象和一個行為隨著策略對象改變而改變的 context 對象。策略對象改變 context 對象的執(zhí)行算法。

適配器模式

適配器模式(Adapter Pattern)是作為兩個不兼容的接口之間的橋梁。這種類型的設(shè)計模式屬于結(jié)構(gòu)型模式,它結(jié)合了兩個獨立接口的功能。這種模式涉及到一個單一的類,該類負責加入獨立的或不兼容的接口功能。舉個真實的例子,讀卡器是作為內(nèi)存卡和筆記本之間的適配器。您將內(nèi)存卡插入讀卡器,再將讀卡器插入筆記本,這樣就可以通過筆記本來讀取內(nèi)存卡。

策略模式

定義一系列的算法,把它們一個個封裝起來,并且使它們可相互替換。本模式使得算法可獨立于使用它的客戶而變化。?

模板模式

在模板模式(Template Pattern)中,一個抽象類公開定義了執(zhí)行它的方法的方式/模板。它的子類可以按需要重寫方法實現(xiàn),但調(diào)用將以抽象類中定義的方式進行。這種類型的設(shè)計模式屬于行為型模式。定義一個操作中的算法的骨架,而將一些步驟延遲到子類中。模板方法使得子類可以不改變一個算法的結(jié)構(gòu)即可重定義該算法的某些特定步驟。

觀察者模式

定義對象間的一種一對多的依賴關(guān)系,當一個對象的狀態(tài)發(fā)生改變時,所有依賴于它的對象都得到通知并被自動更新。
spring中Observer模式常用的地方是listener的實現(xiàn)。如ApplicationListener。?文章來源地址http://www.zghlxwxcb.cn/news/detail-830075.html

到了這里,關(guān)于Spring中常見的設(shè)計模式的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Java 設(shè)計者模式以及與Spring關(guān)系(七) 命令和迭代器模式

    Java 設(shè)計者模式以及與Spring關(guān)系(七) 命令和迭代器模式

    本文是個系列一次會出兩個設(shè)計者模式作用,如果有關(guān)聯(lián)就三個,除此外還會講解在spring中作用。 23設(shè)計者模式以及重點模式 我們都知道 設(shè)計者模式 有 3 類 23 種設(shè)計模式,標紅是特別重要的設(shè)計者模式建議都會,而且熟讀于心,標藍是指其次重要建議也要明白。 (1)創(chuàng)建

    2024年01月24日
    瀏覽(24)
  • Java 設(shè)計者模式以及與Spring關(guān)系(六) 裝飾和模版方法模式

    Java 設(shè)計者模式以及與Spring關(guān)系(六) 裝飾和模版方法模式

    本文是個系列一次會出兩個設(shè)計者模式作用,如果有關(guān)聯(lián)就三個,除此外還會講解在spring中作用。 23設(shè)計者模式以及重點模式 我們都知道 設(shè)計者模式 有 3 類 23 種設(shè)計模式,標紅是特別重要的設(shè)計者模式建議都會,而且熟讀于心,標藍是指其次重要建議也要明白。 (1)創(chuàng)建

    2024年01月24日
    瀏覽(25)
  • 【Spring】Spring中的設(shè)計模式

    【Spring】Spring中的設(shè)計模式

    責任鏈模式介紹 Spring源碼介紹 spring中Aop的責任鏈模式,相對于傳統(tǒng)的責任鏈模式做了一定的改造。 傳統(tǒng)的設(shè)計模式,抽象處理者會有一個方法設(shè)置和獲取具體處理者的下一個處理者的方法。 如: 但是Spring中的責任鏈模式?jīng)]有這兩個方法,而是抽出一個公共的處理方法,方

    2024年02月14日
    瀏覽(39)
  • spring的設(shè)計模式----簡單工廠模式

    spring的設(shè)計模式----簡單工廠模式

    spring中IoC 控制反轉(zhuǎn),底層是工廠模式。 工廠模式(Factory Pattern)是 Java 中最常用的設(shè)計模式之一。這種類型的設(shè)計模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對象的最佳方式。 工廠模式提供了一種將對象的實例化過程封裝在工廠類中的方式。通過使用工廠模式,可以將對象的

    2024年02月17日
    瀏覽(19)
  • Spring學習筆記(二)Spring的控制反轉(zhuǎn)(設(shè)計原則)與依賴注入(設(shè)計模式)

    是一種設(shè)計原則,降低程序代碼之間的耦合度 對象由Ioc容器統(tǒng)一管理,當程序需要使用對象時直接從IoC容器中獲取。這樣對象的控制權(quán)就從應(yīng)用程序轉(zhuǎn)移到了IoC容器 依賴注入是一種消除類之間依賴關(guān)系的設(shè)計模式。例如,A類要依賴B類,A類不再直接創(chuàng)建B類,而是把這種依賴

    2024年02月19日
    瀏覽(21)
  • Spring??到的設(shè)計模式

    Spring 框架是一個廣泛應(yīng)用于企業(yè)級 Java 開發(fā)的開源框架,它提供了一系列的模塊,包括依賴注入、面向切面編程、事務(wù)管理等功能,以簡化企業(yè)級應(yīng)用的開發(fā)。在 Spring 的設(shè)計和實現(xiàn)中,采用了多種設(shè)計模式來解決不同的問題,提高代碼的可維護性、可擴展性和可重用性。

    2024年01月19日
    瀏覽(32)
  • Spring中的設(shè)計模式

    Spring中的設(shè)計模式

    目錄 1.Spring中使用到的設(shè)計模式有: 2.工廠模式 3.單例模式 4.代理模式 5.模板模式 6.適配器模式 ? ? ? ? 工廠模式:實現(xiàn)IoC容器 ? ? ? ? 單例模式:將bean設(shè)置為單例 ? ? ? ? 代理模式:AOP的底層實現(xiàn) ? ? ? ? 模板模式:比如引入jdbc依賴后出現(xiàn)的jdbcTemplate ? ? ? ? 適配器模

    2024年02月12日
    瀏覽(42)
  • spring用到的設(shè)計模式

    在Spring中,默認情況下,Spring容器中的所有Bean都是單例(Singleton)的,也就是說,Spring容器中每個Bean的實例只有一個。這是因為Spring默認使用單例模式來創(chuàng)建Bean,確保每個Bean在整個應(yīng)用中只有一個實例,從而提高應(yīng)用性能和資源利用率。 在Spring中,單例 Bean 是 Spring Appli

    2024年02月08日
    瀏覽(21)
  • 設(shè)計模式的分類及Spring中用到的設(shè)計模式

    在《設(shè)計模式:可復用面向?qū)ο筌浖幕A(chǔ)》(Design Patterns: Elements of Reusable Object-Oriented Software)一書中,提出了 23 種設(shè)計模式,通常稱為 GoF(Gang of Four)設(shè)計模式。這些設(shè)計模式被分為以下三種類型: 創(chuàng)建型模式(Creational Patterns): 工廠方法模式(Factory Method Pattern) 抽象

    2024年02月22日
    瀏覽(20)
  • 設(shè)計模式_spring框架中常用的8種設(shè)計模式

    設(shè)計模式_spring框架中常用的8種設(shè)計模式

    spring框架中常用到的8種設(shè)計模式清單如下: 設(shè)計模式 使用地方 備注 工廠模式 BeanFactory ApplicationContext 單例模式 Spring中的Bean 代理模式 Spring AOP java反射實現(xiàn)動態(tài)代理 模板方法模式 Spring中以Template結(jié)尾的類 使用繼承的方式實現(xiàn) 觀察者模式 Spring事件驅(qū)動模型 適配器模式 Spri

    2023年04月08日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包