struts2執行流程及環境搭建

2021-06-17 21:49:38 字數 1534 閱讀 4360

struts2和struts1一樣,

都是應用在web層的框架

,不過,它不是基於struts1公升級而來

,而是乙個基於webwork的全新框架,webwork框架是繼struts1之後推出的開源框架。

struts2和struts1在體系結構上是有很大差別的,struts2中需要使用者實現的元件及元素有:action類、strusts.xml。去掉了struts1中的actionform,換了一種新的傳遞表單資料的方式。通過**看一下區別吧。

下面是乙個簡單的登入。

1. 頁面

2.需要引入的jar以及配置檔案的編寫。

web.xml檔案

struts2

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

config

struts-default.xml,struts-plugin.xml,config/struts.xml

/*

struts.xml檔案核心配置檔案

/success.jsp

/error.jsp

3. action實現類

public class logonaction else

}}

action可以繼承actionsupport,也可以採用不繼承方式。

接收引數:可以建乙個實體類來獲取頁面資料,就像struts1中的form,但是不需要繼承actionform,也可以直接在action中定義username和password屬性來接收表單資料,但是struts2不支援直接在action的方法中直接加形參接收引數,這個在springmvc中是支援的。

下面是struts2官網中關於struts2執行流程的**,非常清晰:

客戶端發出請求,該請求經過一些過濾器,最後到達filterdispacher。filterdispacher根據配置檔案的資訊,判斷該請求是否需要某個action,並找到對應的action,action的方法被執行後,根據返回結果在配置檔案中匹配相應的頁面或者重定向請求,最後將結果返回到客戶端。

1. 客戶端向伺服器發出請求

2. 請求經過一系列的過濾器,最終到達filterdispatcher

4. actionproxy通過configurationmanager讀取配置檔案,根據擷取的url找到對應的action

5. actionproxy建立乙個actioninvocation例項

6. actioninvocation呼叫action的execut方法

7. actioninvocation根據struts.xml配置找到對應的返回結果

struts2執行流程

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

Struts2 請求執行流程

你所有的成功,都是來自你的努力,而你的努力,就是讓自己變得值錢起來。我們共勉 乙個請求在struts2框架中的處理步驟 客戶端初始化乙個指向servlet容器的請求 根據web.xml配置,請求首先經過actioncontextcleanup過濾器,其為可選過濾器,這個過濾器對於struts2和其他...

struts2原始碼執行流程

先進入核心過濾器,然後判斷該請求是不是由struts2執行的,是的話 1 建立actioncontext 其中其實先建立乙個valuestack,然後從其中拿出context用來建立actioncontext 2 把request包裝成乙個新的request 包裝了getattribute方法,包裝...