dispatchaction類(org.apache.struts.actions.dispatchaction)
dispatchaction類是action類的子類,他提供了有實現的execute方法。
我們寫的自定義action類,可以繼承dispatchaction類,但不要覆蓋execute方法,可以在自定義類中寫反回值和參數列都與execute方法相同的方法,可以通過在struts-congfig.xml中為這個action的配置中新增乙個引數,來判斷調哪乙個方法,實際上dispatchaction類就是通過反射機制,通過form中引數呼叫了自定義action中的方法,當然這些方法的定義要符合規範,使用繼承dispatchaction類的自定義的action類,也就會共享同一的action路徑。
注意:使用繼承dispatchaction類的自定義的action,只會匹配乙個action路徑,只能共享乙個actionform,如果加上校驗,會產生form表單的引數不一致的情況,會導致校驗無法通過。
例:
在jsp頁面中也不用在使用隱藏域傳遞引數,直接在form中的action中就可以直接使用***.do匹配了。
lookupdispatchaction(org.apache.struts.actions.lookupdispatchaction)
lookupdispatchaction類也是dispatchaction類的子類,他所實現的功能是解決乙個表單多種提交問題的
,他是通過使用資源檔案,用submit按鈕的value來作為資源檔案中的key所對應的值,通過這個值來找到對用的key,在使用這個key來獲得指定map中所對應的值,這個值就是要呼叫的方法名。
submit的value---->messageresource.properties中的key----->map中key對相應的值---->action
例:<%@taglib uri="" prefix="bean" %>
messageresource.properties
button.add=add new user
button.delete=delete user
注意:在繼承lookupdispatchaction時,要覆蓋getkeymethodmap()方法,並定義map,向map中放入指定的鍵值對。
public class adddellookupdispatchaction extends lookupdispatchaction
自定義的action類的一些規則
1,盡量不要在action類中使用(靜態)成員變數,如果使用要加上同步。
2,盡量使各模組間的耦合性降低,最大限度的針對介面程式設計。
3,可以將共**方在覆蓋父類的方法中,最後可以用super.***(***)來呼叫父類的方法,使用父類的實現,並加上了自定義的功能。
struts2 2 配置詳解
詳解struts.xml檔案 hello.jsp 檢視struts default struts default包定義了result的型別和 預設常量配置在struts2核心包下面 方式先後也是載入先後 方法1.在src下建立struts.properties檔案 將需要更改的屬性貼上到配置檔案中做...
Struts2 2 動態呼叫方法
先來看看struts配置檔案 hello.jsp add input.jsp success.jsp update input.jsp success.jsp success.jsp 這會我們加入了namespace命名空間,所以在請求位址的時候不要忘記寫上這個,然後可以看出已經沒有了method方...
struts 22 xwork校驗器列表使用說明
系統提供的校驗器列表如下 required 必填校驗器,要求field的值不能為null requiredstring 必填字串校驗器,要求field的值不能為null,並且長度大於0,預設情況下會對字串去前後空格 stringlength 字串長度校驗器,要求field的值必須在指定的範圍內,否則...