[英]Flow of control in Struts 1.2 (Lifecycle)
標題可能聽起來有點模糊,但我會試一試。 我有2個servlet:
Action class
,根據index.jsp
的輸入將頁面轉發為成功或失敗 ActionForm class
,具有getter和setters方法 我有3個jsp文件:
我有2個xml文件:
我理解web.xml是如何工作的。 我唯一的疑問是,首先從struts.xml調用one.java /two.java中的哪一個?
我試圖調試並發現ActionForm
類,即two.java
調用two.java
,然后將值返回給Action
即one.java
。
但是Action類應該首先執行,然后是動作形式嗎? 我的意思是這就是MVC架構所遵循的。
請解釋。 鏈接到非常詳細的工作流程將非常有用。
在Action
之前調用ActionForm
類並不奇怪 - 在調用Struts動作方法之前,Struts表單應該填充用戶的數據,其中任何一個都有4個參數:
ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response
第二個 - ActionForm
- 應該准備好允許最遠的數據處理。 我剛剛找到了很好的序列圖來說明所有Struts生命周期階段:
簡而言之:
RequestProcessor
以找出適當的操作和表單 RequestProcessor
獲取Struts表單對象(或者如果它不存在則創建它),填充請求中的數據,啟動驗證(如果存在)並調用適當的Struts操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.