朱雀的IT世界

          每天進步一點點,努力做好自己

           

          總結一下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

          導航

          統計

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 青川县| 新宁县| 兖州市| 手游| 涟水县| 即墨市| 庆元县| 辽阳县| 宝山区| 富阳市| 石柱| 惠水县| 兴业县| 宁波市| 房产| 芦山县| 东安县| 武夷山市| 柞水县| 瑞金市| 瑞丽市| 芷江| 炎陵县| 贵州省| 阿坝| 五原县| 洪雅县| 皋兰县| 道真| 景宁| 玉龙| 深水埗区| 大足县| 荥阳市| 大悟县| 昆山市| 和顺县| 威宁| 富平县| 莱芜市| 东丰县|