![動(dòng)力節(jié)點(diǎn)老杜Spring6框架實(shí)戰(zhàn)入門教程第二章_第1頁](http://file4.renrendoc.com/view/47cc9cf71d8d9d84fc6204f7fda18625/47cc9cf71d8d9d84fc6204f7fda186251.gif)
![動(dòng)力節(jié)點(diǎn)老杜Spring6框架實(shí)戰(zhàn)入門教程第二章_第2頁](http://file4.renrendoc.com/view/47cc9cf71d8d9d84fc6204f7fda18625/47cc9cf71d8d9d84fc6204f7fda186252.gif)
![動(dòng)力節(jié)點(diǎn)老杜Spring6框架實(shí)戰(zhàn)入門教程第二章_第3頁](http://file4.renrendoc.com/view/47cc9cf71d8d9d84fc6204f7fda18625/47cc9cf71d8d9d84fc6204f7fda186253.gif)
![動(dòng)力節(jié)點(diǎn)老杜Spring6框架實(shí)戰(zhàn)入門教程第二章_第4頁](http://file4.renrendoc.com/view/47cc9cf71d8d9d84fc6204f7fda18625/47cc9cf71d8d9d84fc6204f7fda186254.gif)
![動(dòng)力節(jié)點(diǎn)老杜Spring6框架實(shí)戰(zhàn)入門教程第二章_第5頁](http://file4.renrendoc.com/view/47cc9cf71d8d9d84fc6204f7fda18625/47cc9cf71d8d9d84fc6204f7fda186255.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Spring6第二章二、Spring概述2.1Spring簡介來自百度百科Spring是一個(gè)開源框架,它由RodJohnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。Spring最初的出現(xiàn)是為了解決EJB臃腫的設(shè)計(jì),以及難以測試等問題。Spring為簡化開發(fā)而生,讓程序員只需關(guān)注核心業(yè)務(wù)的實(shí)現(xiàn),盡可能的不再關(guān)注非業(yè)務(wù)邏輯代碼(事務(wù)控制,安全日志等)。2.2Spring8大模塊注意:Spring5版本之后是8個(gè)模塊。在Spring5中新增了WebFlux模塊。SpringCore模塊這是Spring框架最基礎(chǔ)的部分,它提供了依賴注入(DependencyInjection)特征來實(shí)現(xiàn)容器對Bean的管理。核心容器的主要組件是BeanFactory,BeanFactory是工廠模式的一個(gè)實(shí)現(xiàn),是任何Spring應(yīng)用的核心。它使用IoC將應(yīng)用配置和依賴從實(shí)際的應(yīng)用代碼中分離出來。SpringContext模塊如果說核心模塊中的BeanFactory使Spring成為容器的話,那么上下文模塊就是Spring成為框架的原因。這個(gè)模塊擴(kuò)展了BeanFactory,增加了對國際化(I18N)消息、事件傳播、驗(yàn)證的支持。另外提供了許多企業(yè)服務(wù),例如電子郵件、JNDI訪問、EJB集成、遠(yuǎn)程以及時(shí)序調(diào)度(scheduling)服務(wù)。也包括了對模版框架例如Velocity和FreeMarker集成的支持SpringAOP模塊Spring在它的AOP模塊中提供了對面向切面編程的豐富支持,SpringAOP模塊為基于Spring的應(yīng)用程序中的對象提供了事務(wù)管理服務(wù)。通過使用SpringAOP,不用依賴組件,就可以將聲明性事務(wù)管理集成到應(yīng)用程序中,可以自定義攔截器、切點(diǎn)、日志等操作。SpringDAO模塊提供了一個(gè)JDBC的抽象層和異常層次結(jié)構(gòu),消除了煩瑣的JDBC編碼和數(shù)據(jù)庫廠商特有的錯(cuò)誤代碼解析,用于簡化JDBC。SpringORM模塊Spring提供了ORM模塊。Spring并不試圖實(shí)現(xiàn)它自己的ORM解決方案,而是為幾種流行的ORM框架提供了集成方案,包括Hibernate、JDO和iBATISSQL映射,這些都遵從Spring的通用事務(wù)和DAO異常層次結(jié)構(gòu)。SpringWebMVC模塊Spring為構(gòu)建Web應(yīng)用提供了一個(gè)功能全面的MVC框架。雖然Spring可以很容易地與其它MVC框架集成,例如Struts,但Spring的MVC框架使用IoC對控制邏輯和業(yè)務(wù)對象提供了完全的分離。SpringWebFlux模塊SpringFramework中包含的原始Web框架SpringWebMVC是專門為ServletAPI和Servlet容器構(gòu)建的。反應(yīng)式堆棧Web框架SpringWebFlux是在5.0版的后期添加的。它是完全非阻塞的,支持反應(yīng)式流(ReactiveStream)背壓,并在Netty,Undertow和Servlet3.1+容器等服務(wù)器上運(yùn)行。SpringWeb模塊Web上下文模塊建立在應(yīng)用程序上下文模塊之上,為基于Web的應(yīng)用程序提供了上下文,提供了Spring和其它Web框架的集成,比如Struts、WebWork。還提供了一些面向服務(wù)支持,例如:實(shí)現(xiàn)文件上傳的multipart請求。2.3Spring特點(diǎn)輕量從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個(gè)大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開銷也是微不足道的。Spring是非侵入式的:Spring應(yīng)用中的對象不依賴于Spring的特定類??刂品崔D(zhuǎn)Spring通過一種稱作控制反轉(zhuǎn)(IoC)的技術(shù)促進(jìn)了松耦合。當(dāng)應(yīng)用了IoC,一個(gè)對象依賴的其它對象會(huì)通過被動(dòng)的方式傳遞進(jìn)來,而不是這個(gè)對象自己創(chuàng)建或者查找依賴對象。你可以認(rèn)為IoC與JNDI相反——不是對象從容器中查找依賴,而是容器在對象初始化時(shí)不等對象請求就主動(dòng)將依賴傳遞給它。面向切面Spring提供了面向切面編程的豐富支持,允許通過分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)(例如審計(jì)(auditing)和事務(wù)(transaction)管理)進(jìn)行內(nèi)聚性的開發(fā)。應(yīng)用對象只實(shí)現(xiàn)它們應(yīng)該做的——完成業(yè)務(wù)邏輯——僅此而已。它們并不負(fù)責(zé)(甚至是意識(shí))其它的系統(tǒng)級(jí)關(guān)注點(diǎn),例如日志或事務(wù)支持。容器Spring包含并管理應(yīng)用對象的配置和生命周期,在這個(gè)意義上它是一種容器,你可以配置你的每個(gè)bean如何被創(chuàng)建——基于一個(gè)可配置原型(prototype),你的bean可以創(chuàng)建一個(gè)單獨(dú)的實(shí)例或者每次需要時(shí)都生成一個(gè)新的實(shí)例——以及它們是如何相互關(guān)聯(lián)的。然而,Spring不應(yīng)該被混同于傳統(tǒng)的重量級(jí)的EJB容器,它們經(jīng)常是龐大與笨重的,難以使用??蚣躍pring可以將簡單的組件配置、組合成為復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對象被聲明式地組合,典型地是在一個(gè)XML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用邏輯的開發(fā)留給了你。所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測試的代碼。它們也為S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 五年級(jí)上冊數(shù)學(xué)聽評(píng)課記錄 《平行四邊形》人教版
- 初中數(shù)學(xué)人教版九年級(jí)下冊同步聽評(píng)課記錄28-2-1 第1課時(shí)《 解直角三角形》
- 2025年筒式采煤機(jī)合作協(xié)議書
- 北師大版七年級(jí)下冊數(shù)學(xué)聽評(píng)課記錄:第六章《概率初步回顧與思考》
- 部審湘教版七年級(jí)數(shù)學(xué)下冊3.3 第2課時(shí)《利用完全平方公式進(jìn)行因式分解》聽評(píng)課記錄
- 青島版數(shù)學(xué)七年級(jí)下冊《10.1 認(rèn)識(shí)二元一次方程組》聽評(píng)課記錄2
- 人教版道德與法治八年級(jí)上冊5.3《善用法律》聽課評(píng)課記錄
- 湘教版數(shù)學(xué)九年級(jí)上冊4.1.2《正弦》聽評(píng)課記錄
- 五年級(jí)上數(shù)學(xué)聽評(píng)課記錄
- 土地復(fù)墾合同范本
- 交通信號(hào)控制系統(tǒng)檢驗(yàn)批質(zhì)量驗(yàn)收記錄表
- Bankart損傷的診療進(jìn)展培訓(xùn)課件
- 護(hù)理部用藥安全質(zhì)量評(píng)價(jià)標(biāo)準(zhǔn)
- 校園信息化設(shè)備管理檢查表
- 新版抗拔樁裂縫及強(qiáng)度驗(yàn)算計(jì)算表格(自動(dòng)版)
- API SPEC 5DP-2020鉆桿規(guī)范
- 創(chuàng)新思維課件(完整版)
- DB34∕T 4161-2022 全過程工程咨詢服務(wù)管理規(guī)程
- 部編版小學(xué)生語文教師:統(tǒng)編版語文1-6年級(jí)語文要素梳理
- 注塑成型工藝參數(shù)知識(shí)講解
- 安全生產(chǎn)專業(yè)化管理
評(píng)論
0/150
提交評(píng)論