天天看點

Struts2架構學習(一)

Struts2架構學習(一)

1,Struts2架構介紹

  Struts2架構是MVC流程架構,适合分層開發。架構應用實作不依賴于Servlet,使用大量的攔截器來處理使用者請求,屬于無侵入式的設計。

2,Struts2架構的流程原理

Struts2架構學習(一)

1)請求先到達Filter中央控制器

2)然後為Action建立代理類

3)将各個服務存放在攔截器中,執行完攔截器後再去執行action類行action類,action類調用service,再調用dao

4)得到結果字元串,建立result對象

5)轉向相應的視圖。

程式流程圖如下:

Struts2架構學習(一)

3,架構的使用

  架構為我們做好了封裝,使用起來就按照步驟,配置幾個xml檔案就行拉。

  1)導入jar包

Struts2架構學習(一)

  2)拷貝struts.xml檔案

  将拷貝的配置檔案放在根目錄src下。struts.xml檔案主要是配置請求路徑對應action類的,以及結果跳轉路勁。

[html] view plaincopyprint?

Struts2架構學習(一)
Struts2架構學習(一)

  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC  
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.0.dtd">  
  5. <struts>  
  6.     <package name="example" namespace="/example" extends="struts-default">  
  7.         <action name="HelloWorld" class="struts2.action.HelloWorldAction">  
  8.             <result name="success">/success.jsp</result>  
  9.         </action>  
  10.     </package>      
  11. </struts>  

  代碼說明:通路/example/HelloWorld.action對應執行struts2.action包下面的HelloWorldAction類;預設情況下執行類中的execute方法,如果想指定方法,需要在<action>标簽中添加method屬性;<result>标簽配置結果跳轉路徑。根據Action類中方法傳回的String字元串,去比對result标簽中的name值,進行跳轉。

Struts2架構學習(一)
Struts2架構學習(一)
    1. <!-- 配置架構的核心排程器 -->  
    2. <filter>  
    3.     <filter-name>struts2</filter-name>  
    4.     <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  
    5. </filter>  
    6. <filter-mapping>  
    7.     <url-pattern>/*</url-pattern>  
    8. </filter-mapping>  

繼續閱讀