1. 程式人生 > 程式設計 >Struts2配置檔案中使用萬用字元的方法(三種形式)

Struts2配置檔案中使用萬用字元的方法(三種形式)

Struts2簡介

Struts2是一個基於MVC設計模式的Web應用框架,它本質上相當於一個servlet,在MVC設計模式中,Struts2作為控制器(Controller)來建立模型與檢視的資料互動。Struts 2是Struts的下一代產品,是在 struts 1和WebWork的技術基礎上進行了合併的全新的Struts 2框架。其全新的Struts 2的體系結構與Struts 1的體系結構差別巨大。Struts 2以WebWork為核心,採用攔截器的機制來處理使用者的請求,這樣的設計也使得業務邏輯控制器能夠與ServletAPI完全脫離開,所以Struts 2可以理解為WebWork的更新產品。雖然從Struts 1到Struts 2有著太大的變化,但是相對於WebWork,Struts 2的變化很小。

形式一:呼叫相同Action中的不同方法

<action name="*Action" class="Jcuckoo.LoginRegistAction" method="{1}">

<result name="input">/login.jsp</result> 
    <result name="error">/error.jsp</result> 
    <result name="success">/welcome.jsp</result>
</action>

其中表達式{1}的值name屬性值中第一個*的值。

如果使用者請求的URL為loginAction.action,則呼叫Jcuckoo.LoginRegistAction中的login方法;

如果使用者請求的URL為registerAction.action,則呼叫Jcuckoo.LoginRegistAction中的register方法;

形式二:通過匹配,呼叫不同的Action的execute方法

<action name="*Action" class="Jcuckoo.{1}Action">

<result name="input">/login.jsp</result> 
    <result name="error">/error.jsp</result> 
    <result name="success">/welcome.jsp</result>
</action>

上面沒有出現method屬性,故預設呼叫對應的execute方法

如果使用者請求的URL為LoginAction.action,則呼叫Jcuckoo.LoginAction中的execute方法;

如果使用者請求的URL為RegisterAction.action,則呼叫Jcuckoo.RegisterAction中的execute方法;

形式三:動態結果

<action name="crud_*" class="Jcuckoo.CrudAction" method="{1}">

<result name="input">/input.jsp</result> 
    <result>/{1}.jsp</result>
</action>

當處理結果是input時,會轉到/input.jsp頁面

當處理結果是success時,

如果crud_create.action,則會執行Jcuckoo.CrudAction中的create方法,並且跳轉到/create.jsp;
如果crud_delete.action,則會執行Jcuckoo.CrudAction中的delete方法,並且跳轉到/delete.jsp;

總結

以上所述是小編給大家介紹的Struts2配置檔案中使用萬用字元的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!