今天在看spring @Valid表单验证的时候,使用@NotEmpty的时候发现被@Deprecated修饰了(表示该用例已经过时),我就想找到它的替代用品. 我在百度搜索的时候,绕了一个大圈子,其实可以在查看源代码(idea "ctr + 鼠标")的时候发现.
如下:
/**
* Asserts that the annotated string, collection, map or array is not {@code null} or empty.
*
* @author Emmanuel Bernard
* @author Hardy Ferentschik
*
* @deprecated use the standard {@link javax.validation.constraints.NotEmpty} constraint instead
*/
@Documented
@Constraint(validatedBy = { })
@SupportedValidationTarget(ValidationTarget.ANNOTATED_ELEMENT)
@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Repeatable(List.class)
@ReportAsSingleViolation
@NotNull
@Size(min = 1)
@Deprecated
public @interface NotEmpty {
@deprecated use the standard {@link javax.validation.constraints.NotEmpty} constraint instead
就是这个,就可以避免使用过时的注解发生错误
删除原来的import, 改为import javax.validation.constraints.NotEmpty;