解釋:首先瀏覽器發送一個請求、給/StrutsPrepareAndExecuteFilter調用doFilter()方法、創建/StrutsActionProxy執行execute()方法、有一個引用/DefaultActionInvocation調invoke()方法、接著去調用其他攔截器的方法、 ...
解釋:首先瀏覽器發送一個請求、給/StrutsPrepareAndExecuteFilter調用doFilter()方法、創建/StrutsActionProxy執行execute()方法、有一個引用/DefaultActionInvocation調invoke()方法、接著去調用其他攔截器的方法、回調
ModelDriven攔截器:
1、當用戶觸發 add 請求時, ModelDriven 攔截器將調用 EmployeeAction 對象的 getModel() 方法, 並把返回的模型(Employee實例)壓入到 ValueStack 棧.
2、接下來 Parameters 攔截器將把表單欄位映射到 ValueStack 棧的棧頂對象的各個屬性中. 因為此時 ValueStack 棧的棧頂元素是剛被壓入的模型(Employee)對象, 所以該模型將被填充. 如果某個欄位在模型里沒有匹配的屬性, Param 攔截器將嘗試 ValueStack 棧中的下一個對象