天天看點

【SpringMVC整合MyBatis】validation校驗-分組校驗

分組校驗

1.需求

上一次我們學習了validation校驗的配置和使用方法,我們不難發現會有一些問題:

我們現在的校驗規則,是在pojo裡添加的:

但是大家想想,pojo是公用的。我們的商品送出controller方法中使用的pojo是這種校驗,那我們在其他使用到這個pojo的controller方法中也要進行校驗,但是其它的controller方法的校驗規則可能遠沒有那麼多或者是不一樣的(比如name我不校驗,隻校驗非空),是以說我們現在的問題就是:

在pojo中定義校驗規則,而pojo是被多個controller所共用,當不同的controller方法對同一個pojo進行校驗,但是每個controller方法需要不同的校驗。

解決方法:

定義多個校驗分組(其實是一個java接口),分組中定義有哪些規則

每個controller方法使用不同的校驗分組

2.校驗分組

我們在工程中建立一個包cn.edu.hpu.ssm.controller.validation,并在包中建立兩個校驗分組接口;

如圖

【SpringMVC整合MyBatis】validation校驗-分組校驗

其中validgroup1.java:

validgroup2.java:

3.在校驗規則中添加分組

4.在controller方法使用指定分組的校驗

測試:

我們把名稱輸入的超長,然後日期為空,結果如圖

【SpringMVC整合MyBatis】validation校驗-分組校驗

發現隻檢驗了name,沒有檢驗日期,是以校驗分組成功!

轉載請注明出處:http://blog.csdn.net/acmman/article/details/47441893