@Validated 和 @Valid
时间: 2023-10-04 08:06:13 浏览: 112
Springboot @Validated和@Valid的区别及使用详解
@Validated 和 @Valid 是 Spring 框架中用于参数校验的注解。它们都用于对方法参数进行校验,但有一些细微的差别。
@Valid 是 Java Bean Validation (JSR-380) 规范中的注解,用于标记需要校验的参数对象。当使用 @Valid 注解时,Spring 会自动根据对象的注解进行校验,并将校验结果封装到 BindingResult 对象中,从而实现参数校验功能。
@Validated 是 Spring 框架提供的注解,用于对方法入参进行校验。与 @Valid 不同的是,@Validated 支持分组校验以及级联校验。通过在方法参数上添加不同的分组注解,可以指定只对特定分组的校验规则进行校验。另外,@Validated 还支持使用 SpEL 表达式进行校验条件的判断。
总结来说,@Valid 是 Java Bean Validation 的注解,用于对象参数的校验;@Validated 是 Spring 框架的注解,用于方法参数的校验,并支持分组校验和条件校验。
阅读全文