一般情況下,我們是通過實現action中execute方法來實現請求處理,這樣子乙個action中就只能寫乙個方法,當我需要實現很多方法的時候寫多個action顯然是很不合理的,因此就需要使用動態呼叫來實現。
也就是說通過在struts.xml檔案中通過配置action標籤的method屬性來設定即可。
但是這個方法有乙個缺陷,當乙個action中有很多方法的時候就需要為每個方法配置一遍action,同時通過分配不同的name屬性來指定到對應的method,因此這種方法很麻煩。
login.jsp頁面:需要在呼叫的時候在action名字加上感嘆號加上你要呼叫的方法名即可
在struts2.xml配置檔案中需要新增常量指明可以動態呼叫方法才可以。
name="struts.enable.dynamicmethodinvocation"
value="true">
constant>
name="login"
namespace="/"
extends="struts-default">
name="mylogin"
class="org.danni.web.action.loginaction">
name="loginsuccess">/index.jspresult>
name="login">login.jspresult>
loginallowed-methods>
這個常量屬性在**找到呢?
也就是說name屬性中的佔位符*可以用來指定你想指定的值。第乙個萬用字元匹配的就是屬性值為的,第二個萬用字元就是指定屬性值為的值。
推薦使用第三種方式,因為它比較方便。
Struts2中動態方法的三種呼叫方式
動態方法呼叫 在struts2中動態方法呼叫有三種方式,動態方法呼叫就是為了解決乙個action對應多個請求的處理,以免action太多 第一種方式 指定method屬性 這種方式我們前面已經用到過,類似下面的配置就可以實現 redirect web inf jsppage chapter2 pla...
Struts呼叫Spring服務類的三種方法
用ssh做了幾個專案,現在總結一下struts action中呼叫spring service的方法,大家有好的實現,請繼續補充 1.老爸操持型 這種型別,即是在baseaction中提供乙個getbean string beanname 的父類方法,業務action 在需要serivce時,呼叫父...
動態呼叫webservice的三種方式
動態呼叫webservice的三種方式 上述步驟需要引用如下四個命名空間 using system.web.services.description ws的描述 以下幾個用於根據描述動態生成 並動態編譯獲取程式集 using system.codedom using microsoft.csharp...