xuefei
2020-12-10 eeeb7233935ea9b10e99043bdbf740ef86c9bf20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package cn.cetc54.platform.core.common.validator;
 
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
 
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import java.util.Date;
 
/**
 * @author exrick
 */
public class DateValidatorImpl implements ConstraintValidator<DateValidator, String> {
 
    private String dateFormat;
 
    @Override
    public void initialize(DateValidator constraintAnnotation) {
 
        // 获取时间格式
        this.dateFormat = constraintAnnotation.dateFormat();
    }
 
    @Override
    public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
 
        if (StrUtil.isBlank(value)) {
            return true;
        }
        try {
            Date date = DateUtil.parse(value, dateFormat);
            return date != null;
        } catch (Exception e) {
            return false;
        }
    }
}