1、定义接口
public interface AddUser {
}
public interface EditUser {
}
2、新建时候校验:
public String add(@Validated({AddUser.class}) BxxxxxBean bxxxxxBean, BindingResult errors) {
}
3、修改时候校验:
public String edit(@Validated({EditUser.class}) BxxxxxBean bxxxxxBean, BindingResult errors) {
}
4、新建和修改时候用的同一个bean,因此进行分组校验,要是用各自的bean就不用分组了!!
bean写法如下:
public class BxxxxxBean {
@NotBlank(groups={AddUser.class},message = "主合同名称不能为空")
private String cosn;
@NotBlank(groups={AddUser.class},message ="新建时候不能为空")
@Length(max = 50, message = "费用描述不能超过50个字")
private String charge_desc;
@NotBlank(groups={EditUser.class},message ="修改时候不能为空")
}
5、使用@GroupSequence注解,确定前后验证顺序:AddUser在前,另一个在后
定义接口如下:
@GroupSequence({AddUser.class,EditUser.class})
public interface Group {
}
5.1 验证具体使用:这样就会先验证 AddUser,有错误就提示,EditUser就不用验证了
public String xxx(@Validated({Group.class}) BxxxxxBean bxxxxxBean, BindingResult errors) {
}