У меня есть два объекта со всеми одинаковыми членами, за исключением элемента date.В Obj1.date - это java.sql.Date, а Obj2.date - это длинная (эпоха).
Мне нужно написать картограф для сопоставления obj1 и obj2.Вот что я пытался сделать:
@Named("sqlDateToEpoch")
default long sqlDateToEpoch(Date timestamp) throws ParseException {
return myUtils.sqlDateToEpoch(timestamp);
}
@Mapping(source = "date", target = "date", qualifiedByName = "sqlDateToEpoch")
Obj2 toObj2(Obj1 source);
List<Obj2> toRecordList(List<Obj1> source);
Но mapperImpl просто имеет собственную реализацию для преобразования даты:
if (source.getDate() != null) {
Obj2.setDate(Long.parseLong(source.getDate()));
}
Я получаю:
java.lang.NumberFormatException: For input string: "2019-04-02 00:00:00.0"
Каков правильный путь для такого обращения?