《大框架原理》word版

《大框架原理》word版

ID:22702701

大?。?6.01 KB

頁數(shù):9頁

時(shí)間:2018-10-31

《大框架原理》word版_第1頁
《大框架原理》word版_第2頁
《大框架原理》word版_第3頁
《大框架原理》word版_第4頁
《大框架原理》word版_第5頁
資源描述:

《《大框架原理》word版》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、ooa(objectorientedanalysis)面向?qū)ο蠓治鰋od(objectorienteddesign)面向?qū)ο笤O(shè)計(jì)Oop面向?qū)ο缶幊蘏pringjavabean的生命周期配置初始化調(diào)用銷毀Spring1、spring原理2、IoC概念:控制權(quán)由對象本身轉(zhuǎn)向容器:由容器根據(jù)配置文件區(qū)創(chuàng)建實(shí)例并創(chuàng)建各個(gè)實(shí)例之間依賴關(guān)系。spring的最大作用ioc/di,將類與類的依賴關(guān)系寫在配置文件中,程序在運(yùn)行時(shí)根據(jù)配置文件動態(tài)加載依賴的類,降低的類與類之間的藕合度。它的原理是在applicationCont

2、ext.xml加入bean標(biāo)記,在bean標(biāo)記中通過class屬性說明具體類名、通過property標(biāo)簽說明該類的屬性名、通過constructor-args說明構(gòu)造子的參數(shù)。其一切都是返射,當(dāng)通過applicationContext.getBean(“id名稱”)得到一個(gè)類實(shí)例時(shí),就是以bean標(biāo)簽的類名、屬性名、構(gòu)造子的參數(shù)為準(zhǔn),通過反射實(shí)例對象,喚起對象的set方法設(shè)置屬性值、通過構(gòu)造子的newInstance實(shí)例化得到對象。正因?yàn)閟pring一切都是反射,反射比直接調(diào)用的處理速度慢,所以這也是spr

3、ing的一個(gè)問題。spring第二大作用就是aop,其機(jī)理來自于代理模式,代理模式有三個(gè)角色分別是通用接口、代理、真實(shí)對象代理、真實(shí)對象實(shí)現(xiàn)的是同一接口,將真實(shí)對象作為代理的一個(gè)屬性,向客戶端公開的是代理,當(dāng)客戶端調(diào)用代理的方法時(shí),代理找到真實(shí)對象,調(diào)用真實(shí)對象方法,在調(diào)用之前之后提供相關(guān)的服務(wù),如事務(wù)、安全、日志。其名詞分別是代理、真實(shí)對象、裝備、關(guān)切點(diǎn)、連接點(diǎn)。2、動態(tài)代理:不用寫代理類,虛擬機(jī)根據(jù)真實(shí)對象實(shí)現(xiàn)的接口產(chǎn)生一個(gè)類,通過類實(shí)例化一個(gè)動態(tài)代理,在實(shí)例化動態(tài)代理時(shí)將真實(shí)對象及裝備注入到動態(tài)代理中

4、,向客戶端公開的是動態(tài)代理,當(dāng)客戶端調(diào)用動態(tài)代理方法時(shí),動態(tài)代理根據(jù)類的返射得到真實(shí)對象的Method,調(diào)用裝備的invoke方法,將動態(tài)代理、Method、方法參數(shù)傳與裝備的invoke方法,invoke方法在喚起method方法前或后做一些處理。1、產(chǎn)生動態(tài)代理的類:java.lang.refect.Proxy2、裝備必須實(shí)現(xiàn)InvocationHandler接口實(shí)現(xiàn)invoke方法3、反射什么是類的返射?通過類說明可以得到類的父類、實(shí)現(xiàn)的接口、內(nèi)部類、構(gòu)造函數(shù)、方法、屬性并可以根據(jù)構(gòu)造器實(shí)例化一個(gè)對象

5、,喚起一個(gè)方法,取屬性值,改屬性值。如何得到一個(gè)類說明?Classcls=類.class;Classcls=對象.getClass();Class.forName(“類路徑”);如何得到一個(gè)方法并喚起它?Classcls=類.class;Constructorcons=cls.getConstructor(newClass[]{String.class});Objectobj=cons.newInstance(newObject[]{“aaa”});Methodmethod=cls.getMethod(“方

6、法名”,newClass[]{String.class,Integer.class});method.invoke(obj,newObject[]{“aa”,newInteger(1)});4、spring的三種注入方式是什么?setterinterfaceconstructor5、spring的核心接口及核類配置文件是什么?FactoryBean:工廠bean主要實(shí)現(xiàn)ioc/diApplicationContextac=newFileXmlApplicationContext(“applicationCo

7、ntext.xml”);Objectobj=ac.getBean(“id值”);applicationContext.xmlStruts2一個(gè)請求在Struts2框架中的處理大概分為以下幾個(gè)步驟:1客戶端初始化一個(gè)指向Servlet容器(例如Tomcat)的請求;2這個(gè)請求經(jīng)過一系列的過濾器(Filter)(這些過濾器中有一個(gè)叫做ActionContextCleanUp的可選過濾器,這個(gè)過濾器對于Struts2和其他框架的集成很有幫助,例如:SiteMeshPlugin)3接著FilterDispatche

8、r被調(diào)用,F(xiàn)ilterDispatcher詢問ActionMapper來決定這個(gè)請是否需要調(diào)用某個(gè)Action4如果ActionMapper決定需要調(diào)用某個(gè)Action,F(xiàn)ilterDispatcher把請求的處理交給ActionProxy5ActionProxy通過ConfigurationManager詢問框架的配置文件,找到需要調(diào)用的Action類6ActionProxy創(chuàng)建一個(gè)ActionInvocati

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時(shí)可能會顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。