2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、在這由三部分組成的介紹Spring框架的系列文章的第一期中,將開始學(xué)習(xí)如何用Spring技術(shù)構(gòu)建輕量級的、強(qiáng)壯的J2EE應(yīng)用程序。developerWks的定期投稿人NaveenBalani通過介紹Spring框架開始了他由三部分組成的Spring系列,其中還將介紹Spring面向方面的編程(AOP)和控制反轉(zhuǎn)(IOC)容器。Spring是一個(gè)開源框架,是為了解決企業(yè)應(yīng)用程序開發(fā)復(fù)雜性而創(chuàng)建的??蚣艿闹饕獌?yōu)勢之一就是其分層架構(gòu),分層架構(gòu)

2、允許您選擇使用哪一個(gè)組件,同時(shí)為J2EE應(yīng)用程序開發(fā)提供集成的框架。在這篇由三部分組成的Spring系列的第1部分中,我將介紹Spring框架。我先從框架底層模型的角度描述該框架的功能,然后將討論兩個(gè)最有趣的模塊:Spring面向方面編程(AOP)和控制反轉(zhuǎn)(IOC)容器。接著將使用幾個(gè)示例演示IOC容器在典型應(yīng)用程序用例場景中的應(yīng)用情況。這些示例還將成為本系列后面部分進(jìn)行的展開式討論的基礎(chǔ),在本文的后面部分,將介紹Spring框架通過

3、SpringAOP實(shí)現(xiàn)AOP構(gòu)造的方式。請參閱下載,下載Spring框架和ApacheAnt,運(yùn)行本系列的示例應(yīng)用程序需要它們。Spring框架框架Spring框架是一個(gè)分層架構(gòu),由7個(gè)定義良好的模塊組成。Spring模塊構(gòu)建在核心容器之上,核心容器定義了創(chuàng)建、配置和管理bean的方式,如圖1所示。圖1.Spring框架的框架的7個(gè)模塊個(gè)模塊組成Spring框架的每個(gè)模塊(或組件)都可以單獨(dú)存在,或者與其他一個(gè)或多個(gè)模塊聯(lián)合實(shí)現(xiàn)。每個(gè)模

4、塊的功能如下:?核心容器核心容器:核心容器提供Spring框架的基本功能。核心容器的主要組件是BeanFacty,它是工廠模式的實(shí)現(xiàn)。BeanFacty使用控制反轉(zhuǎn)(IOC)模式將應(yīng)用程序的配置和依賴性規(guī)范與實(shí)際的應(yīng)用程序代碼分開。?Spring上下文上下文:Spring上下文是一個(gè)配置文件,向Spring框架提供上下文信息。Spring上下文包括企業(yè)服務(wù),例如JNDI、EJB、電子郵件、國際化、校驗(yàn)和調(diào)度功能。?SpringAOP:通

5、過配置管理特性,SpringAOP模塊直接將面向方面的編程功能集成到了Spring框架中。所以,可以很容易地使Spring框架管理的任何對象支持AOP。SpringAOP模塊為基于Spring的應(yīng)用程序中的對象提供了事務(wù)管理服務(wù)。通過使用SpringAOP,不用依賴EJB組件,就可以將聲明性事務(wù)管理集成到應(yīng)用程序中。?SpringDAO:JDBCDAO抽象層提供了有意義的異常層次結(jié)構(gòu),可用該結(jié)構(gòu)來管理異常處理和不同數(shù)據(jù)庫供應(yīng)商拋出的錯(cuò)誤

6、消息。異常層次結(jié)構(gòu)簡化了錯(cuò)誤處理,并且極大地降低了需要編寫的異常代碼數(shù)量(例如打開和關(guān)閉連接)。SpringDAO的面向JDBC的異常遵從通用的DAO異常層次結(jié)構(gòu)。?SpringM:Spring框架插入了若干個(gè)M框架,從而提供了M的對象關(guān)系工具,其中包括JDO、Hibernate和iBatisSQLMap。所有這些都遵從Spring的通用事務(wù)和DAO異常層次結(jié)構(gòu)。IOC容器容器Spring設(shè)計(jì)的核心是g.springframewk.be

7、ans包,它的設(shè)計(jì)目標(biāo)是與JavaBean組件一起使用。這個(gè)包通常不是由用戶直接使用,而是由服務(wù)器將其用作其他多數(shù)功能的底層中介。下一個(gè)最高級抽象是BeanFacty接口,它是工廠設(shè)計(jì)模式的實(shí)現(xiàn),允許通過名稱創(chuàng)建和檢索對象。BeanFacty也可以管理對象之間的關(guān)系。BeanFacty支持兩個(gè)對象模型。?單態(tài)單態(tài)模型提供了具有特定名稱的對象的共享實(shí)例,可以在查詢時(shí)對其進(jìn)行檢索。Singleton是默認(rèn)的也是最常用的對象模型。對于無狀態(tài)服

8、務(wù)對象很理想。?原型原型模型確保每次檢索都會(huì)創(chuàng)建單獨(dú)的對象。在每個(gè)用戶都需要自己的對象時(shí),原型模型最適合。bean工廠的概念是Spring作為IOC容器的基礎(chǔ)。IOC將處理事情的責(zé)任從應(yīng)用程序代碼轉(zhuǎn)移到框架。正如我將在下一個(gè)示例中演示的那樣,Spring框架使用JavaBean屬性和配置數(shù)據(jù)來指出必須設(shè)置的依賴關(guān)系。BeanFacty接口接口因?yàn)間.springframewk.beans.facty.BeanFacty是一個(gè)簡單接口,所

9、以可以針對各種底層存儲(chǔ)方法實(shí)現(xiàn)。最常用的BeanFacty定義是XmlBeanFacty,它根據(jù)XML文件中的定義裝入bean,如清單1所示。清單清單1.XmlBeanFactyBeanFactyfacty=newXMLBeanFacty(newFileInputSteam(“mybean.xml“))在XML文件中定義的Bean是被消極加載的,這意味在需要bean之前,bean本身不會(huì)被初始化。要從BeanFacty檢索bean,只需

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論