Struts2基本原理

2021-06-22 03:39:54 字數 2022 閱讀 8588

闡述struts2的執行流程。 

struts 2框架本身大致可以分為3個部分:核心控制器filterdispatcher、業務控制器action和使用者實現的企業業務邏輯元件。

核心控制器filterdispatcher是struts 2框架的基礎,包含了框架內部的控制流程和處理機制。業務控制器action和業務邏輯元件是需要使用者來自己實現的。使用者在開發action和業務邏輯元件的同時,還需要編寫相關的配置檔案,供核心控制器filterdispatcher來使用。 struts 2的工作流程相對於struts 1要簡單,與webwork框架基本相同,所以說struts 2是webwork的公升級版本。

基本簡要流程如下:

1、客戶端瀏覽器發出http請求。

2、根據web.xml配置,該請求被filterdispatcher接收。

3、根據struts.xml配置,找到需要呼叫的action類和方法, 並通過ioc方式,將值注入給aciton。

4、action呼叫業務邏輯元件處理業務邏輯,這一步包含表單驗證。

5、action執行完畢,根據struts.xml中的配置找到對應的返回結果result,並跳轉到相應頁面。

6、返回http響應到客戶端瀏覽器。

工作原理

在struts2框架中的處理大概分為以下幾個步驟 

1 客戶端初始化乙個指向servlet容器(例如tomcat)的請求 

2 這個請求經過一系列的過濾器(filter)(這些過濾器中有乙個叫做actioncontextcleanup的可選過濾器,這個過濾器對於struts2和其他框架的整合很有幫助,例如:sitemesh plugin) 

5 actionproxy通過configuration manager詢問框架的配置檔案,找到需要呼叫的action類 

6 actionproxy建立乙個actioninvocation的例項。 

7 actioninvocation例項使用命名模式來呼叫,在呼叫action的過程前後,涉及到相關***(intercepter)的呼叫。 

看到網友的對struts2的原理總結,我自己也總結以便後續的面試,以下是我的疑問

1、客服端發起乙個請求,通過http協議指向tomcat容器,tomcat拿到請求她幹了什麼?

2、我們web.xml配置

struts2

org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter

struts2

/*我們從web配置檔案中可以看到org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter,這個filter這個類有什麼用?

這個 /* 是攔截所有的請求,他攔截了請求做了什麼處理? /*

3.我們struts.xml配置

/hello.jsp

誰負責根據struts.xml配置,找到需要呼叫的action類和方法呢?

4。最後根據struts.xml中的配置找到對應的返回結果result,在返回http響應到客戶端瀏覽器

其實用最簡單的七個步驟:

1:客戶端在瀏覽器中輸入乙個url位址。

2:這個url請求通過http協議傳送給tomcat。

3:tomcat根據url找到對應專案裡面的web.xml檔案。

4:在web.xml裡面會發現有struts2的配置。

5:然後會找到struts2對應的struts.xml配置檔案。

6:根據url解析struts.xml配置檔案就會找到對應的class。

7:呼叫完class返回乙個字string,根據struts.xml返回到對應的jsp。

struts2標籤分類:

1.表單ui標籤

2.非表單ui標籤

3.控制標籤

4.資料標籤

為什麼使用struts2?

1.開源

2.mvc框架

3.純pojo的action

4.更好的標籤特性

5.易測試

6.易擴充套件

struts2基本原理

servlet void init servletconfig cfg 初始化,讀取servlet的配置引數 void service servletrequest request,servletresponse response 服務方法,使用者的每次請求都會執行 void destory 銷毀方...

Struts2的基本原理

闡述struts2的執行流程。struts 2框架本身大致可以分為3個部分 核心控制器filterdispatcher 業務控制器action和使用者實現的企業業務邏輯元件。核心控制器filterdispatcher是struts 2框架的基礎,包含了框架內部的控制流程和處理機制。業務控制器acti...

Struts基本原理

上圖 於struts2官方站點,是struts 2 的整體結構。乙個請求在struts2框架中的處理大概分為以下幾個步驟 1 客戶端初始化乙個指向servlet容器 例如tomcat 的請求 2 這個請求經過一系列的過濾器 filter 這些過濾器中有乙個叫做actioncontextcleanup...