2
我试图设置一个javax
验证来比较两个日期。 一个日期应该比另一个少。Javax验证约束 - 比较两个日期
另外,我为两个日期都创建了自定义约束。但问题是,我的注释接口无法处理非原始数据类型。
这里是我的代码:(我知道这是不对的,但也许你能理解我的问题,如果我告诉我的源)
豆:
@DateValidator(firstDate="assignmentStart", secondDate="assignmentEnd")
public class ProjectAssignment implements IsSerializable {
private String id;
private Project project;
private String projectResponsibility;
private Date assignmentStart;
private Date assignmentEnd;
}
注解的接口:
@Target({ TYPE, ANNOTATION_TYPE })
@Retention(RUNTIME)
@Constraint(validatedBy = DateValidatorImpl.class)
public @interface DateValidator {
String firstDate();
String secondDate();
String message() default "";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
所以这里是一个问题:我尝试将Date
类型放入String
类型。 但如果我声明我firstDate
和secondDate
为Date
,有一个问题:
Invalid type Date for the annotation attribute `DateValidator.firstDate;
only primitive type, `String`, `Class`, annotation, enumeration are permitted
or 1-dimensional arrays thereof
是否有任何其他的方式来比较2个日期与对方吗?
我错过了什么?