詳解Spring MVC中的AbstractFormController

bstractFormController用於支持帶步驟的表單提交的命令控制器基類,使用該控制器可以完成:

  1. 定義表單處理(表單的渲染),並從控制器獲取命令對象構建表單;
  2. 提交表單處理,當用戶提交表單內容後,AbstractFormController可以將用戶請求的數據綁定到命令對象,並可以驗證表單內容、對命令對象進行處理。

集成 AbstractFormController 類,需要實現其中的handleRequestInternal方法:

詳解Spring MVC中的AbstractFormController

  • bindOnNewForm:是否在進行表單展示時綁定請求參數到表單對象,默認false,不綁定;
  • sessionForm:session表單模式,如果開啟(true)則會將表單對象放置到session中,從而可以跨越多次請求保證數據不丟失(多步驟表單常使用該方式,詳解AbstractWizardFormController),默認false;
  • Object formBackingObject(HttpServletRequest request) :提供給表單展示時使用的表單對象(form object表單要展示的默認數據),默認通過commandName暴露到請求給展示表單;
  • Map referenceData(HttpServletRequest request, Object command, Errors errors):展示表單時需要的一些引用數據(比如用戶註冊,可能需要選擇工作地點,這些數據可以通過該方法提供),如:
詳解Spring MVC中的AbstractFormController

這樣就可以在表單展示頁面獲取cityList數據。


分享到:


相關文章: