久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

SimpleFormController流程

 漂在北方的狼 2007-07-18

SimpleFormController往上繼承自AbstractFormController,,而又繼承自AbstractController,
這是開始實作Controller介面的基底類別,再往上的兩個類別各司W(wǎng)ebApplicationContext與Http response的資源,。

  對於簡單的表單需求,我們通常透過繼承SimpleFormController,,並覆寫其onSumit()方法來完成表單功能,,
而實際上真正的表單處理流程定義在AbstractFormController

  這邊說明三個我覺得比較常用且不複雜的方法,在繼承了SimpleFormController(AbstractFormController)之後,,
您可以覆寫這些方法:formBackingObject(),、referenceData(),、onBindAndValidate()。

  當瀏覽器使用GET方法向Action發(fā)出請求時,,會調用formBackingObject()方法,,您可以在這個方法中預先設定好表單物件,在表單網(wǎng)頁中就會顯示表單的預設值,,例如:

java 代碼
  1. protected Object formBackingObject(HttpServletRequest request) throws Exception {   
  2.     LoginForm loginForm = new LoginForm();   
  3.     loginForm.setUsername("guest");   
  4.     loginForm.setPassword("guest");   
  5.   
  6.     return loginForm;   
  7. }  

在使用者送出資料之後,,如果sessionForm為false,則會再呼叫formBackingObject()方法取得表單物件,,若sessionForm設定為true,,則會試著有session中找尋表單物件。

您可以在referenceData()中定義一些JSP頁面可以參考到的參數(shù),,例如:

java 代碼
  1. protected Map referenceData(HttpServletRequest request) throws Exception {   
  2.     Map ref = new HashMap();   
  3.     ref.put("defalutUser""guest");   
  4.   
  5.     return ref;   
  6. }  

 

onBindAndValidate()就如其名所示,,當表單物件的資料已經(jīng)綁定,並且還沒開始驗證之前,,您可以試著在這個方法中作一些預處理,,例如進行字母大小寫轉換,附帶一些額外的資訊等等:

java 代碼
  1. protected void onBindAndValidate(HttpServletRequest request, Object command, BindException errors) throws Exception {   
  2.  }  

url請求來到時,,這樣處理:
a) 請求傳遞給一個controller對象
b) 調用formBackingObject()方法,,創(chuàng)建一個command對象的實例。
c) 調用initBinder(),,注冊需要的類型轉換器
d) 調用showForm()方法,,返回準備呈現(xiàn)給用戶的視圖
e) 調用referenceData()方法,準備給用戶顯示相關的數(shù)據(jù),。如用戶登錄需要選擇的年度信息
f) 返回formView指定的視圖
表單請求來到時,,這樣處理:
a) 調用formBackingObject()方法,創(chuàng)建一個command對象的實例,。
b) 將請求傳來的參數(shù)寫入command對象
c) 如果設置為要求驗證,,則調用validator類進行數(shù)據(jù)驗證
d) 調用onBindAndValidate()方法,該方法允許自定義數(shù)據(jù)綁定和校驗處理
e) 調用onSubmit()方法,,進行業(yè)務邏輯處理

    本站是提供個人知識管理的網(wǎng)絡存儲空間,,所有內容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內容中的聯(lián)系方式,、誘導購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內容,,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多