如果要添加接口校验,需要
1,在接口方法中请求参数前面添加@Valid注解,不需要在接口的实现类上添加@Valid注解,也不需要@Validated注解:
addAnimal(@Valid Animal a)
2,在请求对象类的每个要校验的字段上添加@Valid注解,也不需要在类上添加@Validated注解:
public class Animal{
@Valid
@NotEmpty
private String name;
}
Validated是Spring对javax.validation的Valid的扩展,添加了支持分组校验功能,但是不支持嵌套校验。
Valid支持嵌套校验,比如:
@Valid private List<Animal> list
知识点扩展:
@Valid是使用hibernate validation的时候使用
@Validated 是只用spring Validator 校验机制使用
<span style="font-size:18px;"> <dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.2.1.Final</version>
</dependency></span>
