robe-convert/src/main/java/io/robe/convert/excel/parsers/ParseDate.java
@Override
    public Date parse(Object o, Field field) {
        if (!isValid(o)) {
            return null;
        }
        JsonFormat formatAnn = field.getAnnotation(JsonFormat.class);
        if (formatAnn == null) {
            throw new RuntimeException("JsonFormat with pattern needed for: " + field.getName());
        }
        try {
            return new SimpleDateFormat(formatAnn.pattern(), Locale.getDefault()).parse(o.toString());
        } catch (ParseException e) {
            throw new RuntimeException("JsonFormat with pattern is wrong for: " + field.getName() + " pattern: " + formatAnn.pattern());
        }
    }
@Override
    public Date parse(Object o, Field field) {
        if (!isValid(o)) {
            return null;
        }
        JsonFormat formatAnn = field.getAnnotation(JsonFormat.class);
        if (formatAnn == null) {
            throw new RuntimeException("JsonFormat with pattern needed for: " + field.getName());
        }
        try {
            return new SimpleDateFormat(formatAnn.pattern(), Locale.getDefault()).parse(o.toString());
        } catch (ParseException e) {
            throw new RuntimeException("JsonFormat with pattern is wrong for: " + field.getName() + " pattern: " + formatAnn.pattern());
        }
    }
@ Override public Date parse ( Object o , Field field ) { if ( ! isValid ( o ) ) { return null ; } JsonFormat formatAnn = field . getAnnotation ( JsonFormat . class ) ; if ( formatAnn == null ) { throw new RuntimeException ( "JsonFormat with pattern needed for: " + field . getName ( ) ) ; } try { return new SimpleDateFormat ( formatAnn . pattern ( ) , Locale . getDefault ( ) ) . parse ( o . toString ( ) ) ; } catch ( ParseException e ) { throw new RuntimeException ( "JsonFormat with pattern is wrong for: " + field . getName ( ) + " pattern: " + formatAnn . pattern ( ) ) ; } }
First it checks is there any annotation class for parsing operations,
if it is, parses with given format, if there is a exception while
parsing with given format catches and tries with default values,
If there is no given format, tries with static values

@param o     Object from cell value
@param field Field from given pojo
@return Valid date after parsing with pattern
First it checks is there any annotation class for parsing operations if it is parses with given format if there is a exception while parsing with given format catches and tries with default values If there is no given format tries with static values