Action類別是使用者請求和業務邏輯之間的橋樑,每個Action充當客戶的一項業務代理。當RequestProcessor類別預處理請求時,在建立了Action的實例後,就呼叫自身的processActionPerform()方法,該方法在呼叫Action類別的execute()。
完整的action
<action path="/aFullAction" type="somePackage.someActionClass"> name="someForm" input="someJSP.jsp" <forward name="successful" path="someJSP.jsp"/> <forward name="failed" path="someOtherJSP.jsp"/> </action>
首先,Struts的ActionServlet接收到一個請求,然後根據struts-config.xml的配置定位到對應的mapping(映射);
接下來假如form的範圍是request或在定義的範圍中很難找到這個form,建立一個新的form實例;
取得form實例以後,呼叫其reset ()方法,然後將表單中的參數放入form,假如validate屬性不為false,呼叫validate()方法;
假如validate()傳回非空的ActionErrors,將會被轉到input屬性指定的URI,假如回傳空的ActionErrors,那麼執行Action的execute() 方法,根據傳回的ActionForward決定目標URI。
這樣做的效果是:execute()只有當validate()成功以後才執行;input屬性指定的是個URI。
以上是jsp中action是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!