com.yqjr.framework.component.validator.DateFormatorValidator Maven / Gradle / Ivy
/**
*
*/
package com.yqjr.framework.component.validator;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import org.apache.commons.lang3.StringUtils;
/**
* ClassName: DateFormatorValidator
* Description: 日期格式校验器
* Create By: admin
* Create Date: 2017年6月15日 上午11:49:06
* Modified By:
* Modified Date:
* Modified Content:
* Version: 1.0
*/
public class DateFormatorValidator implements ConstraintValidator {
private String format;
/*
* (non-Javadoc)
*
* @see
* javax.validation.ConstraintValidator#initialize(java.lang.annotation.
* Annotation)
*/
@Override
public void initialize(DateFormator constraintAnnotation) {
this.format = constraintAnnotation.format();
}
/*
* (non-Javadoc)
*
* @see javax.validation.ConstraintValidator#isValid(java.lang.Object,
* javax.validation.ConstraintValidatorContext)
*/
@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
if (StringUtils.isBlank(value))
return false;
boolean isValid = false;
SimpleDateFormat dateFormatter = new SimpleDateFormat(format);
try {
Date date = dateFormatter.parse(value.trim());
if (value.equals(dateFormatter.format(date)))
return true;
} catch (Exception e) {
isValid = false;
}
return isValid;
}
}