下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Spring帶給我們什么:方便解耦,簡化開發(fā)通過Spring提供的loC容器,我們可以將對象之間的依賴關(guān)系交由Spring進(jìn)行控制,防止硬編碼所造成的過度程序耦合。有了Spring,用戶不必再為單實(shí)例模式類、屬性文件解析等這些很底層的需求編寫代碼,可以 更專注于上層的應(yīng)用。 AOP編程的支持 通過Spring提供的AOP功能,方便進(jìn)行面向切面的編程,許多不容易用傳統(tǒng)OOP實(shí)現(xiàn)的功能可以通過 AOP輕松應(yīng)付。聲明式事務(wù)的支持 在Spring中,我們可以從單調(diào)煩悶的事務(wù)管理代碼中解脫出來,通過聲明式 方式靈活地進(jìn)行事務(wù)的管理,提高開發(fā)效率和質(zhì)量。方便程序的測試可以用非容器依賴的編程方式進(jìn)行幾乎所有
2、的測試工作,在Spring里,測試不再是昂貴的操作,而是隨手可做的事情。方便集成各種優(yōu)秀框架 Spring不排斥各種優(yōu)秀的開源框架,相反,Spring可以降低各種框架的使用難度,Spring提供了對各種優(yōu)秀框架如 Struts,Hibernate、Hession、Quartz等的直接支持。降低Java EE API的使用難度 Spring對很多難用的Java EE API 如JDBC, JavaMail,遠(yuǎn)程調(diào)用等提供了一個(gè)薄薄的封裝層,通過Spri ng的簡易圭寸裝,這些 Java EE API的使用難度大為降低。 Java源碼是經(jīng)典學(xué)習(xí)范例 Spring的源碼設(shè)計(jì)精妙、結(jié)構(gòu)清晰、匠心獨(dú)用,
3、處處表達(dá)著大師對Java設(shè)計(jì)模式靈活運(yùn)用以及對Java技術(shù)的高深造詣。Spring框架源碼無疑是Java技術(shù)的最正確實(shí)踐范例。如果想在短時(shí)間 內(nèi)迅速提高自己的Java技術(shù)水平和應(yīng)用開發(fā)水平,學(xué)習(xí)和研究Spring源碼將會使你收到意想不到的效果。Struts 2 根本 jar 包 S-S-H是一個(gè)基于MVC框架組合,struts是一個(gè)具有良好可管理性的web應(yīng)用框架,主要負(fù)責(zé)視圖使用 struts標(biāo)簽來構(gòu)建頁面視圖并且使用ActionSupport來接收并處理頁面表單傳回來的數(shù)據(jù),spring是一個(gè)輕量級的容器,他的目標(biāo)是來實(shí)現(xiàn)一個(gè)全方 位的整合框架,利用spring框架來整合其他子框架,例如整
4、合struts和hibernate ;比方說工程中的action和service都托管給spring來管理,到達(dá)一個(gè)全方位的整合 框架,工程的action和service都通過xml配置文件來描述這個(gè) bean , spring通過配 置路徑直接加載這些 bean,從而來管理這些javabean hibernate是一個(gè)數(shù)據(jù)持久化 中間件,他使業(yè)務(wù)邏輯和數(shù)據(jù)實(shí)現(xiàn)了松耦合,并且封裝了所有的數(shù)據(jù)訪問細(xì)節(jié),使業(yè) 務(wù)邏輯層專注于實(shí)現(xiàn)業(yè)務(wù)邏輯。工程中在對數(shù)據(jù)庫操作< 增刪改查 > 的時(shí)候,因?yàn)閔ibernate托管給了 spring , spring將使用他框架中的 hibernate支持類
5、HibernateDaoSupport 的 find , save, upedate , delete , deleteall 等方法對數(shù)據(jù)庫 進(jìn)行增刪改查,假設(shè)需要復(fù)雜的查詢可以使用nativesql,常規(guī)查詢個(gè)人收集整理勿做商業(yè)用途Spring 中 IOC, DI, AOP ioc就是控制翻轉(zhuǎn)或是依賴注入。通俗的講就是如果在什么地方需要一個(gè)對象, 你自己不用去通過new生成你需要的對象,而是通過 spring的bean工廠為你 長生這樣一個(gè)對象。個(gè)人收集整理勿做商業(yè)用途aop就是面向切面的編程。比方說你每做一次對數(shù)據(jù)庫操作,都要生成一句日 志。如果,你對數(shù)據(jù)庫的操作有很多類,那你每一類中都
6、要寫關(guān)于日志的方法。 但是如果你用aop,那么你可以寫一個(gè)方法,在這個(gè)方法中有關(guān)于數(shù)據(jù)庫操作 的方法,每一次調(diào)用這個(gè)方法的時(shí)候,就加上生成日志的操作。個(gè)人收集整理勿做商業(yè)用途說的不是很清晰,多寫多看就能明白了。l.loC是什么?loC(lnversion of Control)控制反轉(zhuǎn),loC是一種新的Java編程模式,目前很 多輕量級容器都在廣泛使用的模式。個(gè)人收集整理勿做商業(yè)用途2oC解決了什么問題?在IoC出現(xiàn)以前,組件之間的協(xié)調(diào)關(guān)系是由程序內(nèi)部代碼來控制的,或者說, 以前我們使用New關(guān)鍵字來實(shí)現(xiàn)兩組間之間的依賴關(guān)系的。個(gè)人收集整理勿做商業(yè)用途這種方式就造成了組件之間的互相耦合。IoC
7、(控制反轉(zhuǎn))就是來解決這個(gè)問題的, 它將實(shí)現(xiàn)組件間的關(guān)系從程序內(nèi)部提到外部容器來管理。個(gè)人收集整理勿做商業(yè)用途也就是說,由容器在運(yùn)行期將組件間的某種依賴關(guān)系動態(tài)的注入組件中。3oC的實(shí)現(xiàn)方式及與DI的關(guān)系?(1) .依賴查找(Dependency Lookup):容器中的受控對象通過容器的 API來查 找自己所依賴的資源和協(xié)作對象。 個(gè)人收集整理勿做商業(yè)用途這種方式雖然降低了對象間的依賴,但是同時(shí)也使用到了容器的API,造成了我們無法在容器外使用和測試對象。個(gè)人收集整理勿做商業(yè)用途依賴查找是一種更加傳統(tǒng)的IoC實(shí)現(xiàn)方式。(2) .依賴注入(Dependency Injection):這就是DI
8、,字面上理解,依賴注入就 是將效勞注入到使用它的地方。對象只提供普通的方法讓容器去決定依賴關(guān)系, 個(gè)人收集整理勿做商業(yè)用途容器全權(quán)負(fù)責(zé)組件的裝配,它會把符合依賴關(guān)系的對象通過屬性(JavaBean中的setter)或者是構(gòu)造子傳遞給需要的對象。個(gè)人收集整理勿做商業(yè)用途相對于IoC而言,依賴注入(DI)更加準(zhǔn)確地描述了 IoC的設(shè)計(jì)理念。所謂依賴 注入,即組件之間的依賴關(guān)系由容器在應(yīng)用系統(tǒng)運(yùn)行期來決定,個(gè)人收集整理勿做商業(yè)用途也就是由容器動態(tài)地將某種依賴關(guān)系的目標(biāo)對象實(shí)例注入到應(yīng)用系統(tǒng)中的各個(gè) 關(guān)聯(lián)的組件之中。4.Spring 中的 IoC 與 DI:IoC是Spring的核心,貫穿始終。對于 Spring框架來說,就是由Spring來 負(fù)責(zé)控制對象的生命周期和對象間的關(guān)系。個(gè)人收集整理勿做商業(yè)用途Spring 中DI有兩種實(shí)現(xiàn)方式-Setter 方式傳值方式和構(gòu)造器方式引用 方式。ORM對象關(guān)系映射ORM 提供了概念性的、易于理解的模型化數(shù)據(jù)的方法。ORM方法論基于三個(gè)核心原那么:簡單:以最根本的形式建模數(shù)據(jù)。傳達(dá)性:數(shù)據(jù)庫結(jié)構(gòu)被任何人都能理 解的語言文檔化。精確性:基于數(shù)據(jù)模型創(chuàng)立正確標(biāo)準(zhǔn)化了的結(jié)構(gòu)。典型地,建
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職印刷媒體技術(shù)(印刷材料選擇)試題及答案
- 2025年大學(xué)第四學(xué)年(演示物理學(xué))現(xiàn)象分析綜合測試試題及答案
- 2025年大學(xué)二年級(紡織工程)紡織材料學(xué)基礎(chǔ)試題及答案
- 2026年中醫(yī)執(zhí)業(yè)助理醫(yī)師(中醫(yī)內(nèi)科學(xué))試題及答案
- 2025年高職(景觀設(shè)計(jì))小區(qū)景觀規(guī)劃階段測試題及答案
- 2025年高職文化創(chuàng)意與策劃(創(chuàng)意策劃)試題及答案
- 2025年大學(xué)生理學(xué)(生理學(xué)基礎(chǔ))試題及答案
- 2025年中職(藥劑)藥物化學(xué)階段測試題及解析
- 六年級語文(升學(xué)沖刺卷)2025-2026年上學(xué)期期末試題及答案
- 2026年黑龍江建筑職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)筆試模擬試題帶答案解析
- 2026年包頭輕工職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試備考題庫及答案詳解
- 草原補(bǔ)償協(xié)議書
- 九年級物理 2025-2026學(xué)年九年級上學(xué)期期末物理試題及答案 2025-2026學(xué)年度上學(xué)期期末教學(xué)質(zhì)量測查九年級物理試卷
- 北京市西城區(qū)2024-2025學(xué)年七年級上學(xué)期期末語文試題及答案
- 江蘇省2025年普通高中學(xué)業(yè)水平合格性考試試卷英語試卷(含答案詳解)
- GB/T 18457-2024制造醫(yī)療器械用不銹鋼針管要求和試驗(yàn)方法
- 手機(jī)維修單完整版本
- 流感防治知識培訓(xùn)
- 呼吸內(nèi)科進(jìn)修匯報(bào)課件
- 康復(fù)治療進(jìn)修匯報(bào)
- 離婚協(xié)議書模板(模板)(通用)
評論
0/150
提交評論