Spring框架彙總(理論篇 基礎理論)

2021-08-15 13:50:48 字數 1451 閱讀 9207

一、spring框架是什麼?

spring框架是一種用來簡化企業級應用開發的開源框架,它能幫助開發者管理物件的生命週期和依賴關係,實現物件之間的解耦合,提高**可維護性。它還提供了多種設計模式的實現,例如常用的**模式、單利模式、工廠模式等。 並且spring框架還封裝或整合了許多常用api,方便開發者呼叫或實現擴充套件功能。

下圖是spring的常用功能模組圖:

二、spring框架的出現主要解決了哪些問題?

在實際開發過程中,對於某些特定的類,經常會有整個程序中只能存在(或只需存在)乙個該類例項的情況。這種情況下開發者就需要考慮使用單例設計模式,隨之而來的問題便是如何管理該例項的建立時機、呼叫方式、銷毀動作等,開發者可以通過多種方式實現單利模式(例如懶漢式、飢漢式),但如果專案中單利模式的例項較多,難免會有大量實現單例模式的**,而這些**大都類似。於是開發者便建立出類似於資料庫連線池的「池子」用來存放和管理物件,每當使用例項時,從「池子」中取出使用即可,這個池子便是spring容器(core container)。

spring容器為了實現物件的管理,引入ioc(inversion of control)技術,幫助開發者管理物件的生命週期,並基於di(dependency injection)技術建立物件之間的依賴關係。

在開發過程中,我們通過面向介面程式設計的方式,來處理同一介面(或父類)下的物件之間的資料結構問題,抽取公共業務方法,以提高**復用率,降低維護難度。而對於不存在實現(或繼承)關係的物件,不能通過定義介面統一資料結構,於是發展出了基於動態**技術的面向介面程式設計方式,我們使用這種方式處理物件的縱向資料結構關係,抽取不存在實現(或繼承)關係的物件的公共業務方法,而spring aop(aspect-oriented programming)技術同樣簡化了這種程式設計方式。

基於jdk動態**和cglib動態**實現,spring aop技術大大簡化了面向切面程式設計的難度,我們可以使用spring框架靈活方便地實現切面、切點與通知的定義,將類似於許可權管理、事務管理、日誌等非核心業務與核心業務分離,即可提高**復用率,降低程式設計難度和維護成本,也方便以後的業務拓展。

總之,spring的出現,大大降低了開發者的勞動強度,專案的開發難度,對於開發者的確如「春天」。

三、spring框架適用於哪些開發場景?

spring框架尤其適合**結構複雜度高的企業級開發,如今最常用的web應用框架ssh(strust2 spring hibernate)ssm(spring-mvc spring mybatis)框架,因程式資料結構清晰、開發迅速等優點被廣泛應用於大型**建設。

四、spring框架怎麼使用?

spring框架的使用在《spring框架學習總結(實操篇)》中詳述。

Spring AOP 基礎理論篇

注 本文為2016 08 22 14 10編寫,由其它部落格搬入csdn,以此說明。最近初步學習spring aop,記錄下一些基本概念及知識,以便以後複習。1 什麼是aopaop aspect oriented programming 面向切面程式設計。是目前軟體開發中的乙個熱點,也是spring...

RIP基礎理論篇

路由選擇資訊協議。基於傳聞的協議。看似執行rip能獲悉菲直連網路的路由,但它並不了解整體網路的連線,只是聽眾鄰居給你發的非直連網路路由。這種方式有好有壞,好處就是不用但心過多的資源消耗。但鄰居告訴你的資訊可能是錯的,但你無法分辨。如果是錯誤資訊接收後,你還會 給你其它的鄰居,在資料層面,這組路由器沿...

Spring 框架知識點彙總

1 標籤 spring mvc的配置方案,標籤會自動註冊下列的4個bean 1 autowiredannotationbeanpostprocessor 對應於使用 autowired註解 2 commondannotationbeanpostprocessor 對應於使用 resource pos...