總結一下Spring MVC 中Validator 的使用
今天使用到Spring 驗證的模塊(Validator),稍微研究了一下,覺得不僅僅是書上講的那么簡單,在此總結下介紹下Spring Validator 接口必須實現的方法
1、public boolean support(Class clazz);這個方法是要驗證提交表單時對應的那個緩存數據的類(通常由Hibernate生成),這通常由代碼編寫者設定,一般不會有錯
2、public void validate(Object target, Errors errors);注意,這里返回的反而不是boolean,這是因為Spring 在處理無法提交的表單使用的機制是例外機制,他會送出一個Errors,包裝了對應的信息。通常使用的方法是由類ValidationUtils 提供的,該類提供了驗證的幾個方法,并包裝了錯誤。這里包裝后的錯誤會出現在Controller 中的BindException 中,可以用getMessage() 方法來得到信息,不過這個信息很原始,可以利用適當的字符串處理機制處理一下。
其實這里有一個更好的方法,就是混合使用<spring:bind>標簽,這個標簽可以把對應提交的form 對象和表單中相關名稱的字段綁定,而且可以通過它的子屬性打印出錯誤信息例如你可以嵌入<c:out value="status.errorMessage" />這樣就會把該字段驗證時失敗的信息顯示出來,非常容易和好用,建議大家可以使用
當Validator 接口實現完畢后,要在配置servlet 的xml 文件中將對應的Controller 的validator 屬性設置為你的Validator 接口實現類,這樣,系統就會自動對你需要驗證的模塊進行驗證了。
如果你還想錦上添花的話,不但可以使用Spring MVC 的驗證機制,還可以用JavaScript 寫一段富客戶端的驗證機制
嗯,差不多了,就總結到此吧
posted on 2007-08-30 20:47 朱雀 閱讀(5537) 評論(0) 編輯 收藏 所屬分類: J2EE