struts2基本原理

2021-07-25 11:14:17 字數 2290 閱讀 6418

servlet:

void init(servletconfig cfg);//初始化,讀取servlet的配置引數

void service(servletrequest request,servletresponse response);服務方法,使用者的每次請求都會執行

void destory();//銷毀方法

單例的--------------------------

filter:

void init(filterconfig cfg);//初始化,讀取filter的配置引數

void dofilter(servletrequest request,servletresponse response,filterchain chain);過濾方法,使用者每次訪問被過濾的資源,都會執行

void destory();//銷毀方法

單例的

總結:過濾器比servlet強大,它能夠決定是否讓目標執行。

---------------------------

實際開發:servlet在mvc開發模型中作為控制器存在,那麼filter也可以作為控制器。

2. struts2是基於mvc開發的框架,屬於表現層框架

struts2有struts+webwork發展而來,與struts1有很大區別

3. struts2目錄結構:

4. 主要jar包: 

5. struts2處理流程:

6.  

載入配置檔案順序

a、default.properties:struts2-core**.jar org.apache.struts包中(程式設計師只能看)

b、struts-default.xml:struts2-core**.jar中(程式設計師只能看)

c、struts-plugin.xml:在外掛程式的jar包中(程式設計師只能看)

以下檔案可自定義修改

d、struts.xml:在應用的構建路徑頂端。自己定義的struts配置檔案(推薦)

e、struts.properties:在應用的構建路徑頂端。程式設計師可以編寫(不推薦)

f、web.xml:配置過濾器時,指定引數。程式設計師可以編寫(不推薦)

特別注意:順序是固定的。後面的配置會覆蓋前面的同名配置資訊。

7. **驗證

此處的預設配置在

default.properties

中,預設為action或無

struts.action.extension=action,,

8. 在struts.xml中設定常用常量(覆蓋default.properties檔案中預設設定)使用constant引數

//處理struts2處理請求字尾,預設為action, 如需配置多個,逗號隔開

<

constant name

="struts.action.extension"

value

="action"

/>

//瀏覽器是否靜態快取內容(true),開發最好關閉

<

constant name

="struts.serve.static.browsercache"

value

="false"

/>

<

constant name

="struts.configuration.xml.reload"

value

="true"

/>

//開發模式,可列印出更詳細的錯誤資訊

<

constant name

="struts.devmode"

value

="true"

/>

//是否支援動態方法呼叫(false)dmi

<

constant name

="struts.enable.dynamicmethodinvocation"

value

="false"

/>

9. 獲取當前工作路徑:

test.jsp:

將test.jsp放入tomcat/web/目錄下

/web

ps:如果在diea中需要配置執行路徑run/edit configaration/deployment

10. 多個配置檔案(struts檔案)

Struts2基本原理

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

Struts2的基本原理

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

Struts基本原理

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