Конвертировать дату домена в дату использования Java - PullRequest
0 голосов
/ 25 февраля 2019

Я пытался преобразовать дату домена в дату использования Java, но она не удалась.Я использую метод, чтобы сделать преобразование:

public static java.util.Date convertDomainDateToUtilDate(oracle.jbo.domain.Date domainDate) {
java.util.Date date = null;
if (domainDate != null) {
java.sql.Date sqldate = domainDate.dateValue();
date = new Date(sqldate.getTime());
}
return date;
}

1 Ответ

0 голосов
/ 25 февраля 2019

Используйте getValue, чтобы получить правильный тип напрямую

public static java.util.Date convertDomainDateToUtilDate(oracle.jbo.domain.Date domainDate) {
    if (domainDate != null) {
        return domainDate.getValue();
    }
    return null;
}

или если вы хотите перейти на Java 8 LocalDate

 public static LocalDate convertDomainDateToUtilDate(oracle.jbo.domain.Date domainDate) {
    if (domainDate != null) {
        return domainDate.getValue().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
    }
    return null;
}

После рекомендации от @ OleV.VВы также можете получить LocalDate из java.sql.Date

public static LocalDate convertDomainDateToUtilDate(oracle.jbo.domain.Date domainDate) {
    if (domainDate != null) {
        return domainDate.dateValue().toLocalDate();
    }
    return null;
}
...