package com.ydtech.validation; import com.ydtech.validation.annotation.CheckDateTime; import javax.validation.ConstraintValidator; import javax.validation.ConstraintValidatorContext; import java.text.SimpleDateFormat; public class DateTimeValidator implements ConstraintValidator { private CheckDateTime checkDateTime; @Override public void initialize(CheckDateTime checkDateTime) { this.checkDateTime = checkDateTime; } @Override public boolean isValid(String value, ConstraintValidatorContext context) { if (value == null) { return true; } String format = checkDateTime.format(); if (value.length() != format.length()) { return false; } SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format); try { simpleDateFormat.parse(value); } catch (Exception e) { return false; } return true; } }