struts2最新收集的一些面試題_第1頁(yè)
struts2最新收集的一些面試題_第2頁(yè)
struts2最新收集的一些面試題_第3頁(yè)
struts2最新收集的一些面試題_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、struts2最新收集的一些面試題問(wèn)題:struts2最新收集的一些面試題 回答:一、用自己的話簡(jiǎn)要闡述struts2的執(zhí)行流程。Struts 2框架本身大致可以分為3個(gè)部分:核心控 制器FilterDispatcher 、業(yè)務(wù)控制器Action和用戶實(shí)現(xiàn)的企業(yè)業(yè)務(wù)邏輯組 件。核心控制器FilterDispatcher 是Struts 2框架的基礎(chǔ),包含了框 架內(nèi)部的控制流程和處理機(jī)制。業(yè)務(wù)控制器Action和業(yè)務(wù)邏輯組件是需要用戶來(lái)自己實(shí)現(xiàn)的。用戶在開(kāi)發(fā)Action和業(yè)務(wù)邏輯組件的同時(shí),還需要編寫(xiě)相關(guān)的配置文件,供核心控制器FilterDispatcher來(lái) 使用。Struts 2的工作流程

2、相對(duì)于 Struts 1要簡(jiǎn)單,與WebWork 框架基本相同,所以說(shuō) Struts 2是WebWork的升級(jí)版本?;竞?jiǎn) 要流程如下:1、客戶端瀏覽器發(fā)出HTTP請(qǐng)求。2、根據(jù)web.xml 配置,該請(qǐng)求被 FilterDispatcher 接收。3、根據(jù)struts.xml配置, 找到需要調(diào)用的Action類(lèi)和方法,并通過(guò)IoC方式,將值注入給Aciton 。4、Action調(diào)用業(yè)務(wù)邏輯組件處理業(yè)務(wù)邏輯,這一步包含表單驗(yàn)證。5、Action執(zhí)行完畢,根據(jù)struts.xml中的配置找到對(duì)應(yīng)的 返回結(jié)果result,并跳轉(zhuǎn)到相應(yīng)頁(yè)面。6、返回HTTP響應(yīng)到客戶端 瀏覽器。二、struts的工

3、作原理:1、初始化,讀取struts-config.xml、web.xml等配置文件(所有配置文件的初始化)2、發(fā)送HTTP請(qǐng)求,客戶端發(fā)送以.do結(jié)尾的請(qǐng)求3、填充FormBean (實(shí)例化、復(fù)位、填充數(shù)據(jù)、校驗(yàn)、保存)4、將請(qǐng)求轉(zhuǎn)發(fā)到Action (調(diào)用Action的execute ()方法)5、 處理業(yè)務(wù)(可以調(diào)用后臺(tái)類(lèi),返回Actio nForward 對(duì)象)6、返回目標(biāo)響應(yīng)對(duì)象(從 Action返回到ActionServlet )7、轉(zhuǎn)換Http請(qǐng)求到目標(biāo)響應(yīng)對(duì)象(查找響應(yīng),根據(jù)返回的Forward keyword )8、Http響應(yīng),返回到Jsp頁(yè)面三、說(shuō)下Struts的設(shè)計(jì)模式:

4、MVC模式:web應(yīng)用程序啟動(dòng)時(shí)就會(huì)加載并初始化 ActionServler。用戶提交表單時(shí),一個(gè)配置好的ActionForm 對(duì)象被創(chuàng)建,并被填入表單相應(yīng)的數(shù) 據(jù),ActionServler根據(jù)Struts-co nfig.xml文件配置好的設(shè)置決定是否需要表單驗(yàn)證,如果需要就調(diào)用ActionForm 的Validate ()驗(yàn)證后選擇將請(qǐng)求發(fā)送到 哪個(gè)Action,如果Action不存在,ActionServlet 會(huì)先創(chuàng)建這個(gè)對(duì) 象,然后調(diào)用 Action 的 execute()方法。Execute()從 ActionForm 對(duì)象中獲取數(shù)據(jù),完成業(yè)務(wù)邏輯,返回一個(gè)ActionForwa

5、rd 對(duì) 象,ActionServlet 再把客戶請(qǐng)求轉(zhuǎn)發(fā)給ActionForward 對(duì)象指定的jsp 組件,ActionForward 對(duì)象指定的jsp生成動(dòng) 態(tài)的網(wǎng)頁(yè),返回給客 戶。一.工作原理一個(gè)請(qǐng)求在Struts2框架中的處理大概分為以下幾個(gè)步驟1客戶端初始化一個(gè)指向Servlet容器(例如Tomcat )的請(qǐng)求2這個(gè)請(qǐng)求經(jīng)過(guò)一系列的過(guò)濾器(Filter)(這些過(guò)濾器中有一個(gè)叫做ActionContextCleanUp的可選過(guò)濾器,這個(gè)過(guò)濾器對(duì)于Struts2和其他框架的集成很有幫助,例如:SiteMesh Plugin )3 接著 FilterDispatcher 被調(diào)用,F(xiàn)ilt

6、erDispatcher 詢(xún) 問(wèn)Actio nM apper來(lái)決定這個(gè)請(qǐng)是否需要調(diào)用某個(gè) Action4 如果 ActionMapper決定需要調(diào)用某個(gè) Action ,F(xiàn)ilterDispatcher 把請(qǐng)求的處理交給 ActionProxy5 Actio nProxy 通過(guò) Con figuration Man ager詢(xún)問(wèn)框架的配置文件,找到需要調(diào)用的Action類(lèi)6 ActionProxy 創(chuàng)建一個(gè) Actionlnvocation的實(shí)例。7 Actio nln vocation實(shí)例使用命名模式來(lái)調(diào)用,在調(diào)用 Actio n的過(guò)程前后,涉及到相關(guān)攔截器(Intercepter )的調(diào)用

7、。8 旦 Action 執(zhí)行完畢,Actionlnvocation負(fù)責(zé)根據(jù)struts.xml中的配置找到對(duì)應(yīng)的返回結(jié)果。返回結(jié)果通常是(但不總是,也可能是另外的一個(gè)Action鏈)一個(gè)需要被表示的JSP或者 FreeMarker的模版。在表示的過(guò)程中可以使用 Struts2框架中繼承 的標(biāo)簽。在這個(gè)過(guò)程中需要涉及到 Actio nM apper基本簡(jiǎn)要流程如下:1、客戶端瀏覽器發(fā)出 HTTP請(qǐng)求。2、根 據(jù) web.xml 配置,該請(qǐng)求被 FilterDispatcher 接收。3、根據(jù) struts.xml配置,找到需要調(diào)用的Action類(lèi)和方法,并通過(guò)IoC方式,將值注入給 Aciton。4、Action 調(diào)用業(yè)務(wù)邏輯組件處理業(yè)務(wù)邏 輯,這一步包含表單驗(yàn)證。5、Action 執(zhí)行完畢,根據(jù) struts.xml中的配置找到對(duì)應(yīng)的返回結(jié)果 result,并跳轉(zhuǎn)到相應(yīng)頁(yè)面。6、返回 HTTP響應(yīng)到客戶端瀏覽器。

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論