天天看點

SpringMVC4-JSR303驗證架構資料驗證

資料驗證

服務端資料驗證:

​ 接收參數,取出對應字段,依次判斷是否滿足對應業務規則(JSR303少寫的就是這些代碼);

​ 驗證不通過,存儲在域中,轉發到頁面顯示。

JSR303:java驗證規範,Spring架構沒有實作,Hibernate實作了

1.1 jar包

SpringMVC4-JSR303驗證架構資料驗證

1.2 配置驗證器

驗證器id取名為localValidator(圖檔裡沒有寫)

SpringMVC4-JSR303驗證架構資料驗證

注冊驅動的名字要跟bean的id一緻

SpringMVC4-JSR303驗證架構資料驗證

1.3 注解

  • 字元串,非空是NotEmpty
SpringMVC4-JSR303驗證架構資料驗證
  • 除了String的其他類型非空NotNull,範圍驗證
SpringMVC4-JSR303驗證架構資料驗證
  • 日期格式(前提要做日期格式轉換),非空NotNull
SpringMVC4-JSR303驗證架構資料驗證
  • 郵箱格式
SpringMVC4-JSR303驗證架構資料驗證
  • 手機号

1.4 測試

  • web
SpringMVC4-JSR303驗證架構資料驗證
  • controller
SpringMVC4-JSR303驗證架構資料驗證

擷取通過驗證的總數量,通過驗證肯定是大于零的

擷取指定的對象屬性是否通過驗證,得到的對象不為空,就是沒有通過驗證

SpringMVC4-JSR303驗證架構資料驗證

有錯誤轉發頁面

SpringMVC4-JSR303驗證架構資料驗證

不想看到這一串格式轉換失敗的錯誤資訊,以下方法

SpringMVC4-JSR303驗證架構資料驗證
  • 加個内容判斷
SpringMVC4-JSR303驗證架構資料驗證
  • 加前端驗證(最簡單的辦法,背景就這麼寫不用動,你繞過前端活該看到這些)