下面列出了javax.validation.constraints.Past#javax.validation.constraints.FutureOrPresent 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private String resolveDate(Field field) {
Future future = field.getAnnotation(Future.class);
if (future != null) {
return "必须为未来的时间";
}
FutureOrPresent futureOrPresent = field.getAnnotation(FutureOrPresent.class);
if (futureOrPresent != null) {
return "必须为未来或现在的时间";
}
Past past = field.getAnnotation(Past.class);
if (past != null) {
return "必须为过去的时间";
}
PastOrPresent pastOrPresent = field.getAnnotation(PastOrPresent.class);
if (pastOrPresent != null) {
return "必须为过去或现在的时间";
}
return null;
}
protected HibernateValidatorConfiguration getValidatorFactoryConfiguration(Locale locale) {
HibernateValidatorConfiguration configuration = Validation.byProvider(HibernateValidator.class)
.configure()
.clockProvider(new CubaValidationTimeProvider(timeSource))
.traversableResolver(new CubaValidationTraversableResolver(metadata, entityStates))
.messageInterpolator(new CubaValidationMessagesInterpolator(messages, locale));
ConstraintMapping constraintMapping = configuration.createConstraintMapping();
//Hibernate validators doesn't support java.sql.Date.
//Replace standard validators for java.util.Date with support java.sql.Date
registerPastValidators(constraintMapping.constraintDefinition(Past.class));
registerPastOrPresentValidators(constraintMapping.constraintDefinition(PastOrPresent.class));
registerFutureValidators(constraintMapping.constraintDefinition(Future.class));
registerFutureOrPresentValidators(constraintMapping.constraintDefinition(FutureOrPresent.class));
configuration.addMapping(constraintMapping);
return configuration;
}
protected void registerFutureOrPresentValidators(ConstraintDefinitionContext<FutureOrPresent> context) {
context.includeExistingValidators(false)
.validatedBy(FutureOrPresentValidatorForCalendar.class)
.validatedBy(CubaFutureOrPresentValidatorForDate.class)
// Java 8 date/time API validators
.validatedBy(FutureOrPresentValidatorForHijrahDate.class)
.validatedBy(FutureOrPresentValidatorForInstant.class)
.validatedBy(FutureOrPresentValidatorForJapaneseDate.class)
.validatedBy(FutureOrPresentValidatorForLocalDate.class)
.validatedBy(FutureOrPresentValidatorForLocalDateTime.class)
.validatedBy(FutureOrPresentValidatorForLocalTime.class)
.validatedBy(FutureOrPresentValidatorForMinguoDate.class)
.validatedBy(FutureOrPresentValidatorForMonthDay.class)
.validatedBy(FutureOrPresentValidatorForOffsetDateTime.class)
.validatedBy(FutureOrPresentValidatorForOffsetTime.class)
.validatedBy(FutureOrPresentValidatorForThaiBuddhistDate.class)
.validatedBy(FutureOrPresentValidatorForYear.class)
.validatedBy(FutureOrPresentValidatorForYearMonth.class)
.validatedBy(FutureOrPresentValidatorForZonedDateTime.class);
}