LocalDate字段验证不适用于DTO

时间:2019-02-19 01:07:17

标签: java validation spring-boot

我正在使用dto对字段验证进行一些测试,并在Spring启动api上使用@NotEmpty注释LocalDate变量,但是,出现此错误:

javax.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint 'javax.validation.constraints.NotEmpty' validating type 'java.time.LocalDate'. Check configuration for 'dateBirth'

注释库是javax.validation.constraints.NotEmpty,但是尝试使用javax.validation.constraints.NotEmpty,因此注释被标记为已弃用。

变量的声明:

@NotEmpty(message = "Campo Data de Nascimento é obrigatório")
private LocalDate dateBirth;

是否有必要在pom.xml中添加某些依赖项?

1 个答案:

答案 0 :(得分:1)

Doc@NotEmpty仅支持CharSequenceCollectionMapArray类型,因此LocalDate不支持不会属于这些类型。对于null检查,您应该只使用@NotNull,因为它可以针对任何类型进行验证。还有@Past可以验证日期是否为过去的日期(在您的情况下为dateBirth)。