spring ioc aop ssh集成教程解析_第1頁
spring ioc aop ssh集成教程解析_第2頁
spring ioc aop ssh集成教程解析_第3頁
spring ioc aop ssh集成教程解析_第4頁
spring ioc aop ssh集成教程解析_第5頁
已閱讀5頁,還剩87頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、7.1 Spring概述7.2注入7.3接口和基本配置7.4 Spring AOP 7.5 Spring依賴的事務(wù)支持7.6 Spring、Struts2集成7.7 Spring和Hibernate集成,7.1 Spring概述、 Spring信息幀工作的一個(gè)主要優(yōu)點(diǎn)是分層結(jié)構(gòu),當(dāng)分層結(jié)構(gòu)可以選擇任何組件時(shí),它為云同步的Java EE應(yīng)用軟件開發(fā)提供集成的信息幀工作。 Spring信息幀工作的層次結(jié)構(gòu)由7個(gè)定義良好的模塊構(gòu)成。 Spring模塊建構(gòu)在定義如何創(chuàng)建、配置和管理Bean的核心擠壓筒上,如圖7.1所示。7.1 Spring簡介、核心擠壓筒:提供spring信息幀工作的基本功能,其主要

2、組件是BeanFactory,實(shí)現(xiàn)工廠模式,它控制反向模式(IOC ) Spring的核心反應(yīng)歷程依賴于注入,也稱作反轉(zhuǎn)控制。7.2依賴于注入,依賴于注入的具體含義是:如果:個(gè)角色(可能是Java實(shí)例,呼叫者)需要另一個(gè)角色(另一個(gè)Java實(shí)例,呼叫者)的協(xié)作,則在傳統(tǒng)的計(jì)程儀編程過程中,呼叫者將創(chuàng)建呼叫者的實(shí)例斯坦共和國但是,在Spring中,創(chuàng)建被調(diào)用方的工作不再由被調(diào)用方進(jìn)行,因此,創(chuàng)建被稱為控制反轉(zhuǎn)的被調(diào)用方實(shí)例的工作通常在Spring擠壓筒下進(jìn)行,并被注入到被調(diào)用方,因此,也稱為依存注入。 依賴于7.2注入,在7.2.1工廠模型中創(chuàng)建名為FactoryExample的Java項(xiàng)目。

3、在src文件夾下創(chuàng)建包“face”,在此包下創(chuàng)建接口“Human.java”。 其查詢密碼如下: package face; publicationinterfacehumanvoidaeat (); void walk (); 7.2.1工廠型號(hào)、Chinese.java查詢密碼如下: 匯入傳真;human; publicschinesimplementshumanpublicvoieat () system.out.println (中國佬很好吃! ); 公共語音工作() system.out.println ); 7.2.1工廠型號(hào),American.java查詢密碼如下: 匯入傳真;h

4、uman; publicsamentarcementimplementshumanpublicvoieat () system.out.println (美國人吃西餐! ); public void walk () system.out.println (美國人經(jīng)常開車! ); 7.2.1在工廠模型src中創(chuàng)建軟件包“factory”,并在此軟件包中創(chuàng)建Factory.java工廠類。 其查詢密碼如下: package factory; 導(dǎo)入iface.American; 導(dǎo)入接口;Chinese; 匯入傳真;human; publicsclationforpublichationhumang

5、ethuman (string name ) if (名稱. equals (Chinese ) )返回新聞(); else if (名稱. equals (美國) )返回新美國(); 以elsethrownewillegalargumentexception (非法參數(shù))、7.2.1工廠模式、src創(chuàng)建包測試,并在此包中創(chuàng)建測試類。 其查詢密碼如下:軟件包測試; 匯入傳真;human; 導(dǎo)入工廠;工廠; publicclasstestpublicstaticvoidmain (字符串陣列) human=null; human=新工廠().gethuman (Chinese ) human.e

6、at (); human.walk (); human=新工廠().gethuman (美國) human.eat (); human.walk (); 7.2.1工廠型號(hào),該堆計(jì)程儀程序是Java應(yīng)用程序,直接運(yùn)行即可看出結(jié)果。 參見圖7.2。7.2.2根據(jù)注入應(yīng)用程序,1 .將Spring開發(fā)能力追加到項(xiàng)目工程中,右喀嚦聲項(xiàng)目工程名,依次選擇“myc eclipse”“addsprincecapabilities”后,顯示圖7.3所示的診斷計(jì)程儀,適用的Spring條請(qǐng)注意,本文檔的Spring版本是Spring 3.0。 7.2.2依賴于注入應(yīng)用程序,選擇完成后按下【Next】按鈕,則顯

7、示如圖7.4所示的畫面,用于制作Spring的配置文件。依賴于7.2.2注入應(yīng)用程序,2 .更改配置文件applicationContext.xml后,其查詢密碼如下:7.2.2依賴于注入應(yīng)用程序,3 .更改測試類配置后,查詢密碼測試類importorg.spring框架. context .應(yīng)用程序上下文; importorg.spring框架. context.support.filesystemxmlapplicationcontext; 匯入傳真;human; publicsclestetpublicstaticvoidmain (string args )應(yīng)用程序上下文tctx=ne

8、wfilesystemxmlapplicationcontext (src /應(yīng)用程序連接) human=(human ) CTX.get bean (Chinese ) human.eat (); human.walk (); human=(human ) CTX.get bean (美國) human.eat (); human.walk (); 7.2.2依賴于注入的應(yīng)用,4 .在圖7.5中示出了執(zhí)行該測試類的結(jié)果(情況ex7_FactoryExample )。7.2.3注入的兩種方式,1 .注入人的接口Human.java,查詢密碼如下: publicationinterfacehum

9、anvoidspeap (); 語言接口Language.java,查詢密碼如下: publicationinterformanagelanguagepublicstringkind ();7.2.3注入的兩種方式,以下是Human實(shí)現(xiàn)類Chinese.java查詢密碼: publiclschinesimplementshumanprivatelanguagelan; publicvoidspeap () system.out.println (LAN.kind () ); 公共語言區(qū)域網(wǎng)(LAN ) this.LAN=LAN; 語言安裝類English.java查詢密碼: publicsla

10、singimplementslanguagepublicstringkind () return中國佬也說英語7.2.3注入兩種方式,以下用Spring的配置文件完成其對(duì)象的注入看一下在查詢密碼:7.2.3中注入的兩種方法。 每個(gè)Bean的id膩?zhàn)臃凼荁ean的唯一id,計(jì)程儀程序通過id膩?zhàn)臃劬W(wǎng)站數(shù)據(jù)庫到Bean。 Bean和Bean的依賴關(guān)系也通過id屬性相關(guān)聯(lián)。 測試查詢密碼如下所示。 importorg.spring框架. context .應(yīng)用程序上下文; importorg.spring框架. context.support.filesystemxmlapplicationcont

11、ext; publicsclestetpublicstaticvoidmain (string args )應(yīng)用程序上下文tctx=newfilesystemxmlapplicationcontext (src /應(yīng)用程序連接) human=(human ) CTX.get bean (Chinese ) human.speak (); 7.2.3注入的兩種方式、方案的執(zhí)行結(jié)果在圖7.6中表示(ex7_FactoryExample1)。 7.2.3注入的兩種方式,2 .結(jié)構(gòu)注入,如簡單修改上一個(gè)查詢密碼Chinese類,則為publicschinesimplementshumanprivate

12、languagelan; 公共信息(); /帶結(jié)構(gòu)注入所需的參數(shù)的構(gòu)造器公共線路(language LAN ) this.LAN=LAN; publicvoidspeap () system.out.println (LAN.kind () );7.2.3注入的兩種方式,配置文件也需要簡單修改: 7.3接口和基本配置,7.3.1 Spring核心接口1BeanFactory BeanFactory采用了工廠設(shè)計(jì)模型。 此接口負(fù)責(zé)創(chuàng)建和分發(fā)Bean,但與其他factory模式實(shí)現(xiàn)不同,它僅分發(fā)一種類型的對(duì)象。 Bean工廠是一個(gè)通用工廠,可以創(chuàng)建和分發(fā)不同類型的Bean。 2 .在應(yīng)用程序上下文

13、的表面上,應(yīng)用程序上下文和BeanFactory幾乎相同。 兩者都裝載Bean定義信息,組裝Bean,并根據(jù)需要分發(fā)Bean。 但是,ApplicationContext提供了文本信息分析工具,包括(1)應(yīng)用程序上下文的國際化子通訊端口。 (2)應(yīng)用程序上下文提供加載文本資源的常用方法,例如加載圖像。 (3)應(yīng)用程序上下文可以向注冊(cè)為監(jiān)聽者的Bean發(fā)送上通告。 由于提供的附加功能,大多數(shù)應(yīng)用程序系統(tǒng)選擇的是應(yīng)用程序上下文,而不是BeanFactory。 7.3.1 Spring核心接口在許多應(yīng)用程序上下文實(shí)現(xiàn)中有三種通用實(shí)現(xiàn): (1)類路徑的xml文件到上下文定義(2) filesystem

14、xmlapplicationcontext :從文件系統(tǒng)內(nèi)的xml文件加載上下文定義信息。 (3) xmlwebapplicationcontext :從web系統(tǒng)的xml文件中加載上下文定義信息。示例:應(yīng)用程序上下文=newfilesystemxmlapplicationcontext (src /應(yīng)用程序上下文. XML ) applicationcontextcontext=newclassspathapplicationcontext (應(yīng)用程序上下文. XML ) applicationcontextcontext=webapplicationcontextutils.getweba

15、pplicationcontext (request.getsession ().getservletcontext ();7.3.2 Spring基本配置,在Spring擠壓筒內(nèi)連接Bean稱為組件。 實(shí)現(xiàn)Bean告訴擠壓筒實(shí)際所需的Bean以及擠壓筒如何使用依賴注入來組裝Bean。 Bean的程序集信息在XML文件中定義。 7.3.2 Spring基本配置,使用1xml組裝以下XML文件時(shí),單純的Spring上下文定義文件:/根元素/Bean關(guān)斯坦共和國字/Bean斯坦共和國,7.3.2 Spring基本配置,使用2spring添加Bean 要將Bean添加到Spring擠壓筒,必須在XM

16、L文件中僅添加一個(gè)子元素。 例如,以下語句: 典型的示例是連接池Bean。 publicsclemyconnectropolutionpolpublicevoidinitalize ()/initionconnectrolpolpublice release connections Bean的定義:- -從擠壓筒中刪除Bean時(shí)調(diào)用close方法的7.3.2 Spring基本配置,從Spring擠壓筒創(chuàng)建bean斯坦共和國時(shí)手板模型模式和單斯坦共和國模式: Spring的Bean在默認(rèn)奧爾特下為單斯坦共和國模式。 每當(dāng)擠壓筒分配Bean時(shí),都會(huì)返回相同的斯坦共和國。 要獲取每個(gè)請(qǐng)求的不同實(shí)例,必須將bean定義為手板模型模式。 的sc

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論