spring框架的功能大約由20個模組組成,我們將spring原始碼拉取下來之後,可以看到spring專案有眾多子模組,如下圖所示:
各模組介紹如下:
模組描述
spring-aop
springaop切面處理,如動態**,aop位元組碼提公升
spring-aspects
同樣是面向切面的乙個重要的組成部分,提供對aspectj框架的整合
spring-beans
springbean相關,如依賴注入,依賴查詢
spring-context
事件驅動、註解驅動、模組驅動等
spring-core
spring基礎api模組,如資源管理,泛型處理
spring-expression
spring表示式語言
spring-instrument
提供了對檢測類的支援和用於特定的應用伺服器的類載入器的實現
spring-jcl
spring對日誌的封裝
spring-jdbc
spring對傳統jdbc的封裝
spring-jms
生產者和消費者的訊息功能的實現
spring-messaging
提供對訊息中介軟體的支援
spring-orm
spring對orm框架的封裝
spring-oxm
spring-tx
提供事務的支援
spring-web
供基礎的web整合功能,在web專案中提供spring的容器
spring-webflux
是函式式響應的web模組,基於reative事件驅動實現的
spring-webmvc
提供基於servlet的spring mvc
spring-websocket
提供webscoket功能
spring原始碼分析 spring原始碼分析
1.spring 執行原理 spring 啟動時讀取應用程式提供的 bean 配置資訊,並在 spring 容器中生成乙份相應的 bean 配置登錄檔,然後根據這張登錄檔例項化 bean,裝配好 bean 之間的依賴關係,為上 層應用提供準備就緒的執行環境。二 spring 原始碼分析 1.1spr...
spring原始碼分析之FactoryBean
一般情況下,我們spring採用反射來例項化物件,可是spring也提供了另一種方式,既通過實現factorybean來描述bean的例項化過程。public inte ce factorybean 介面描述很簡單 獲取bean,獲取bean的型別,是否是單例 public class carpub...
Spring 原始碼分析
public throws bean ception 到這裡最終的方法就是refresh super只是做一些初始化工作,可以忽略。以下是初始化發放做的事情 debug main adding systemproperties propertysource with lowest search pr...