阿里P7級(jí)架構(gòu)師總結(jié)Spring核心模塊及功能匯總


如果你在使用Spring,而且沒(méi)有使用SpringBoot,那么每個(gè)Spring的功能都需要引入相應(yīng)的jar包依賴。而Spring的jar包依賴又有一二十個(gè),很容易混淆,造成編譯或運(yùn)行錯(cuò)誤。

下面我們就整理一下Spring3和Spring4的核心模塊和對(duì)應(yīng)的jar包,方便我們?cè)诰唧w使用的過(guò)程中更加清晰的了解到我們都需要什么。

Spring3框架結(jié)構(gòu)圖
Spring4框架結(jié)構(gòu)圖

與Spring3相比去掉了Struts,新增了Messaging和Websocket。

分析上面的框架結(jié)構(gòu)圖,大概包括以下模塊和jar包依賴。

核心容器(Core Container)

  • spring-core:核心類庫(kù),其他模塊大量使用此jar包;
  • spring-beans:Spring定義Bean的支持;
  • spring-context:運(yùn)行時(shí)Spring容器;
  • spring-context-support:Spring容器對(duì)第三方包的集成支持,比如郵件服務(wù)、視圖
    解析
  • spring-expression:Spring表達(dá)式語(yǔ)言

AOP

  • spring-aop:基于代理的AOP支持;
  • spring-aspects:基于AspectJ的AOP支持;
  • spring-instrument:提供一些類級(jí)的工具支持和ClassLoader級(jí)的實(shí)現(xiàn),用于服務(wù)器;
  • spring-instrument-tomcat:針對(duì)tomcat的instrument實(shí)現(xiàn);

數(shù)據(jù)訪問(wèn)/集成

  • spring-jdbc:提供以jdbc訪問(wèn)數(shù)據(jù)庫(kù)的支持;
  • spring-tx:提供編程式和聲明式事務(wù)支持;
  • spring-orm:提供對(duì)象/關(guān)系映射支持;
  • spring-oxm:提供對(duì)象/xml映射支持;
  • spring-jms:提供對(duì)JMS(java消息服務(wù))的支持;

web

  • spring-web:提供基礎(chǔ)的web集成功能;
  • spring-webmvc:基于servlet的MVC;
  • spring-webmvc-portlet:基于portlet的mvc實(shí)現(xiàn);
  • spring-websocket:提供websocket功能;

test&messaging

  • spring-test:spring測(cè)試,提供junit與mock測(cè)試功能;
  • spring-messaging:對(duì)消息架構(gòu)和協(xié)議的支持;

當(dāng)我們清晰明了的知道Spring的每個(gè)模塊都需要引入什么jar包時(shí),出錯(cuò)的概率也將大大減少,當(dāng)然,如果能夠使用Springboot,問(wèn)題將會(huì)更加簡(jiǎn)化。

歡迎Java工程師朋友們加入Java高級(jí)架構(gòu)進(jìn)階: 963944895,群內(nèi)提供免費(fèi)的Java架構(gòu)學(xué)習(xí)資料(里面有高可用、高并發(fā)、高性能及分布式、Jvm性能調(diào)優(yōu)、Spring源碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個(gè)知識(shí)點(diǎn)的架構(gòu)資料)合理利用自己每一分每一秒的時(shí)間來(lái)學(xué)習(xí)提升自己,不要再用"沒(méi)有時(shí)間“來(lái)掩飾自己思想上的懶惰!趁年輕,使勁拼,給未來(lái)的自己一個(gè)交代!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容