javascript
Spring框架基础知识
本人博客文章網(wǎng)址:https://www.peretang.com/basic-knowledge-of-spring-framework/
Spring框架簡介
Spring , 一個開源的框架 , 由Rod Johnson創(chuàng)建. Spring是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的 , 可以讓簡單的JavaBeans/POJO來實現(xiàn)之前只有EJB[1]才能完成的事情. Spring還提供了大量API簡化與其他第三方框架的集成.?
縱覽Spring , 你會發(fā)現(xiàn)Spring可以解決非常多的問題 , 但歸根到底 , 所有Spring提供的API/解決方案的理念都可以追溯到Spring最根本的理念上 "簡化Java開發(fā)" .
▲Spring=簡化Java開發(fā)
Spring策略與核心
Spring為了降低Java開發(fā)復(fù)雜性的4大關(guān)鍵策略/核心
1. 基于POJO的輕量級和最低侵入性編程
2. 通過依賴注入和面向接口實現(xiàn)松耦合
3. 基于切面和慣例進(jìn)行聲明式編程
4. 通過切面和模版減少板式代碼
基本所有Spring的API/解決方案都可以追溯到上述的一條或多條策略中.?
Spring缺點(diǎn)
雖然Spring能降低復(fù)雜性 , 但是當(dāng)Spring發(fā)展到現(xiàn)在4.X , Spring已然是一個很復(fù)雜的框架.?
另Spring的最初目標(biāo)是一個輕量級的容器框架 , 但是發(fā)展到現(xiàn)在Spring4.X也已經(jīng)是一個重量級框架.?
最后雖然Spring是最小的侵入性 , 但是它帶給了我們最大的依耐性.?
Spring模塊
Core模塊
spring-core,spring-beans?: 框架的最基礎(chǔ)模塊,其提供了IOC和依賴注入等功能
spring-context?: 提供了一種訪問對象的上下文對象
spring-context-support?: 提供了將第三方庫集成到上下文中的功能
spring-expression(SPEL) : 提供了強(qiáng)大的表達(dá)式語言支持 , 減少工作量
AOP模塊
spring-aop : 提供了一個符合AOP規(guī)范的面向切面的API實現(xiàn)
spring-aspects : 提供了與AspectJ的集成
數(shù)據(jù)訪問集成模塊
spring-jdbc : 提供簡化JDBC編程的API
spring-tx : 提供簡化事務(wù)管理和編程的API
spring-orm : 提供簡化ORM規(guī)范[2]編程的API , 并提供對JPA , Hibernate的支持
spring-oxm : 提供簡化OXM規(guī)范[3]編程的API
spring-jms : 提供簡化JMS規(guī)范[4]編程的API
Web模塊
spring-web : 提供簡化基本W(wǎng)eb功能編程的API
spring-webmvc,spring-webmvc-portlet : 提供簡化MVC[5]和RESTful[6]編程的API
spring-websocket : 提供簡化Websocket編寫的API
測試模塊
spring-test : 提供對單元測試和集成測試支持的組件 , 簡化測試用例編程的API
信息模塊
spring-messaging :?支持消息架構(gòu)和協(xié)議
設(shè)備模塊
spring-instrument :?提供了在某些應(yīng)用服務(wù)器中使用的類檢測支持和類加載器實現(xiàn)
spring-instrument-tomcat :?提供了在Tomcat中使用的類檢測支持和類加載器實現(xiàn)
Spring架構(gòu)圖
?
參考
Spring framework reference
Spring In Action
注釋
[1]這里的EJB指的是EJB2.X,因為從EJB3.X規(guī)范開始也可以使用POJO來實現(xiàn)EJB規(guī)范。
[2]對象關(guān)系映射 , 用來把對象模型表示的對象映射到基于SQL的關(guān)系模型數(shù)據(jù)庫結(jié)構(gòu)中去.?
[3]Object XML Mapping?,?數(shù)據(jù)實體對象與XML節(jié)點(diǎn)之間的映射.
[4]Java消息服務(wù) , JavaEE規(guī)范中的一員 , 負(fù)責(zé)與信息中間件(MOM)進(jìn)行交互的API. 參考 :?JAVAEE規(guī)范基礎(chǔ)知識
[5]MVC是一種使用 MVC (Model View Controller 模型-視圖-控制器) 設(shè)計創(chuàng)建 Web 應(yīng)用程序的模式.?
[6]RESTful一種軟件架構(gòu)風(fēng)格.?
轉(zhuǎn)載于:https://www.cnblogs.com/peretang/p/basic-knowledge-of-spring-framework.html
總結(jié)
以上是生活随笔為你收集整理的Spring框架基础知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tomcat 禁用access.log
- 下一篇: 5.2下午