freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

j2ee項(xiàng)目實(shí)訓(xùn)struts框架技術(shù)——第12章struts2框架技術(shù)及應(yīng)用第1部分-文庫吧資料

2024-11-25 16:15本頁面
  

【正文】 法(但需要聲明定義)來處理用戶請(qǐng)求。 讀者從圖 中可以了解到 Struts 2 框架 是應(yīng)用 ActionProxy 代理 類來隔離開發(fā)人員 實(shí)現(xiàn)的業(yè)務(wù)控制器Action 組件對(duì) Servlet 容器的依賴 —— 這是 代理 模式的具體應(yīng)用。 因此,在 Struts 2 框架中 用于處理用戶請(qǐng)求的實(shí)際 Action 類 實(shí)例,并不是 開發(fā)人員實(shí)現(xiàn)的業(yè)務(wù)控制器 Action 組件類 ,而是 ActionProxy( Action 代理 )類 —— 從而才有可能使得 開發(fā)人員 實(shí)現(xiàn)的業(yè)務(wù)控制器 Action 組件類 不再與 J2EE Servlet API 相互耦合。當(dāng)然,這些 初始化參數(shù) 也可以在后面將要介紹楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán)所有,盜版必究 , 9/16 頁 的 和 文件 中進(jìn)行配置定義。 而 FilterDispatcher 組件 在執(zhí)行時(shí)會(huì)自動(dòng)地查找 文件(該文件在 缺省的 應(yīng)用方式下 必須放在 /WEBINF/classes 目錄中)、并對(duì)該 XML 文件中的各個(gè)配置項(xiàng)目進(jìn)行 解析 。具體 的 配置 示例請(qǐng)見下面 【例 121】 所示的 文件中的部分配置定義標(biāo)簽 ,并請(qǐng)注意其中的黑體部分的內(nèi)容。 為此,也同樣需要在 Web 應(yīng)用系統(tǒng)中的部署描述文件 中配置出其前端控制器FilterDispatcher 過濾器 組件 (而原有的 Struts 框架 是 采用 一個(gè)普通 的 Servlet 組件來承擔(dān)的)。 當(dāng)然, 起 主要 作用的業(yè)務(wù)控制器 其實(shí) 不是 開發(fā)人員編程定義 及實(shí)現(xiàn) 的 Action 組件 類 ,而是 由 Struts 2 框架 系統(tǒng)生成的 Action 組件代理 (也就是圖 中所標(biāo)識(shí)的 ActionProxy 組件) ,但該 ActionProxy 組件會(huì)回調(diào) 用戶 編程 定義的 各個(gè) 業(yè)務(wù)控制器 Action 組件 。 Struts 2 框架 的控制器組件是 Struts 2 框架的核心, 目前 所有 MVC 框架都是以控制器組 件為核心的。同樣 , 在 Action 組件 執(zhí)行 完畢 后 仍然會(huì)觸發(fā)各個(gè) 攔截器組件 以完成對(duì)請(qǐng)求處理 后的善后處理功能要求 。 因此,客戶端 提交 產(chǎn)生出 對(duì) 某個(gè) Aciton 組件的 HttpServletRequest 請(qǐng)求時(shí), Struts2框架 中的 FilterDispatcher 組件 會(huì)根據(jù)請(qǐng)求 的類型 ,調(diào)度并執(zhí)行相應(yīng)的 業(yè)務(wù)控制器 Action組件 。 2) 各個(gè) 攔截器組件 組成一個(gè) 鏈 式結(jié)構(gòu)并相互協(xié)作 Struts2 框架 是一種 支持?jǐn)r截器 ( Interceptor)技術(shù)的 框架, 通過各個(gè) 攔截器 組件 實(shí)現(xiàn) 將 應(yīng)用系統(tǒng)中與控制調(diào)度有關(guān)的共同功能 行為獨(dú)立出來, 并 在 系統(tǒng)的 Action 組件 執(zhí)行前和 后 被觸發(fā)執(zhí)行 。 當(dāng)然,這種設(shè)計(jì)思想其實(shí)和原有的 Struts 框架中使用 Jakarta Commons Chain 組件的 RequestProcessor 組件 類很相似 ,但更加模板化和職責(zé)分離 。而且允許開發(fā)人員根據(jù)對(duì)請(qǐng)求處理不同層次的要求,可以 配置不同的攔截器或者攔截器 鏈 。 但 Struts2 框架 控制層設(shè)計(jì) 與 原有的 Struts 框架系統(tǒng)的控制層 設(shè)計(jì) 有很大的不同,這主要體現(xiàn)在增加了 攔截器組件 、 Action 組件類不再與 J2EE Servlet 容器緊密藕合 。如果沒有設(shè)置 ActionContextCleanUp 過濾器 , FilterDispatcher 就會(huì)清除掉所有的 ThreadLocal 對(duì)象 。 3) 最后 各個(gè)攔截器組件 會(huì)被再次執(zhí)行( 但 順序和開始 時(shí) 相反, 并 調(diào)用 after()方法),然后請(qǐng)求最終被返回給 在系統(tǒng)的部署描述文件 中 配置的其他的 過濾器 。但在調(diào)用之前 ActionInvocation 組件 會(huì)根據(jù)配置文件中的設(shè)置項(xiàng)目 加載 與目標(biāo) Action 組件 相關(guān)的所有 攔截器組件( Interceptor) 。 圖 Struts2 的系統(tǒng)架構(gòu)圖 這是 Struts2 框架中的 FilterDispatcher 和 Struts 框架中的 ActionServlet 組件的不同處之一,只有這樣才能使得 用戶實(shí)現(xiàn)的業(yè)務(wù)控制器 Action 類不需要 與 Servlet API耦合 。其中 FilterDispatcher 是控制器的核心, 也 就是 MVC 中控制層的核心 組件 。 因此, Struts2 框架也就同樣具有與 WebWork2 相同的特性 —— 前 置 攔截 器( Interceptor) 、 運(yùn)行時(shí)表單屬性驗(yàn)證 、 類型轉(zhuǎn)換,強(qiáng)大的表達(dá)式語言( OGNL, the Object 楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán)所有,盜版必究 , 5/16 頁 Graph Notation Language) 和控制反轉(zhuǎn) IoC( Inversion of Control)容器等 。 每個(gè)部分的主要內(nèi)容的說明如下: 第 1 部分: 分別代表了客戶端的一次 Http 請(qǐng)求,和服務(wù)器端運(yùn)算結(jié)束之后的一次響應(yīng) 輸出 ;第 2 部分:代表 Servlet 過濾器 ; 第 3 部分: WebWork 框架的核心部分 ; 第 4 部分: 攔截器部分 ; 第 5 部分:需要開發(fā)人員 自己開發(fā)的 各個(gè)部分的 程序 , 其中包括: Action 類,頁面模板,配置文件 (在 Struts2 框架 中實(shí)際為 文件) 等。這樣的設(shè)計(jì)實(shí)現(xiàn)方案不僅簡(jiǎn)化了 Web 應(yīng)用系統(tǒng)的開發(fā)過程,更重要的是完善了系統(tǒng)的體系結(jié)構(gòu),也 更 方便了 對(duì) Web 應(yīng)用系統(tǒng) 中的控制層組件 單元測(cè)試的實(shí)施。 因此, Struts2 框架是在 WebWork2 基礎(chǔ)上擴(kuò)展而產(chǎn)生的,與原有的 Struts 框架相比,它的 MVC 結(jié)構(gòu)更完整,并且可以與 FreeMaker 等工具很好地合作。 意思是說: Struts 技術(shù)等同于 WebWork 框架,除了 系統(tǒng) 包和屬性被改名外。 Aside from the package and property renaming, it isn39。但由于 Struts 框架技術(shù)出現(xiàn)的時(shí)間 比較早,在當(dāng)時(shí)的技術(shù)環(huán)境下只能兼容于 J2EE Web JSP 技術(shù)標(biāo)準(zhǔn), 當(dāng)然也就不能很好地和現(xiàn)在 比較 流行的工具如 FreeMaker、 AJAX 等工具 和有關(guān)的先進(jìn)技術(shù) 進(jìn)行 有效的 合作。 Struts2 框架是在 WebWork2 的基礎(chǔ)上發(fā)展的 下段英文內(nèi)容,原引自 Apache 官方網(wǎng)站對(duì) Struts2 框架技術(shù)的介紹: Apache Struts 2 was originally known as WebWork 2. After working independently for several years, the WebWork and Struts munities joined forces to create Struts2. This new version of Struts is simpler to use and closer to how Struts was always meant to be. 由此不難看出,雖然 Struts2 框架在名稱上依然稱為 “ Struts” ,但是 Struts2 框架與 Struts 框架相比已經(jīng)可以說是不同的兩種框架了。 3) Struts 2 框架是在 WebWork2 框架 的 基礎(chǔ) 上 經(jīng) 過整合而產(chǎn)生 Struts 2 框架很好地解決了上述 Struts 框架 所面臨的 各個(gè)問題,因?yàn)?Struts 2 框架是在 WebWork2(由 Open Symphony 社區(qū)開發(fā)的)框架 的 基礎(chǔ) 上 經(jīng)過整合而產(chǎn)生的。 ? ActionForm表單 包裝組件對(duì)事件支持不夠細(xì)致,只在表單級(jí)別實(shí)現(xiàn)了事件支持 ——屬于應(yīng)用級(jí)的 事件支持( Application Event),而沒有為表單中的某個(gè)屬性字段提供事件支持 —— 屬于組件級(jí)的 事件支持( Component Event)。但它的轉(zhuǎn)化都是在類級(jí)別的,而且轉(zhuǎn)化的類型是不可配置的。對(duì)它的單元測(cè)試也就會(huì)依賴于 Web 容器,盡管可以采用本書第 9章 中 所介紹 的 StrutsTestCase 框架實(shí)現(xiàn)單元測(cè)試,但也只能采用模擬測(cè)試方式。 2) Action 組 件過 分依 賴于 Servlet 容器 ,由 于在 Action 組件 中需 要獲得HttpServletRequest
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1