我正在名为JsonData的类中获得一个请求,该类具有字段'type'(字符串应该是类名),以及需要解析和验证bean验证的对象的'data'
Java pojo
@Id
@GeneratedValue
@Type(type = "uuid-char")
private UUID pid;
Table
pid varchar(36)
我正在控制器@Valid注释处验证bean
在JsonData对象中,我将提供自定义注释
我的方法是获取类型,并检查提供的类型是否存在类。如果存在,则将jsonData.getData()加载到该对象中
public class AddEmpDto {
@NotNull
private String empCode;
@NotNull
private String mobNo;
@Valid
private JsonData addr;
private Date birthDate;
}
public class JsonData {
@NotNull
@NotBlank
private String type;
@NotNull
private Object data;
}
//one of json data's type 'Address'
public class Address {
@NotNull
private String line1;
@NotNull
private String pinCode;
@NotNull
private String city;
private String state;
private String country;
}
它正在打印整个对象。
但是validate()函数未考虑对提供的类进行验证。即使字段值为null且具有@ NotNull,validate()仍返回空白[]