У меня есть старая программа, и я обновил ее до Java 8. Теперь я хотел бы воспользоваться LocalDateTime. Я уже обновил объект и в базе данных значение читает 10-APR-1990
.Тестирование даты из базы данных, которая использует to_date и тестирование на LocalTimeDate
Однако я получаю следующее сообщение об ошибке:
java.time.format.DateTimeParseException: Text '10-APR-90' could not be parsed at index 3
В моем тесте я пытаюсь разобрать его с помощью DateTimeFormatter
.
Тест:
@Test
public void testLocalDateTime() throws Exception {
DateTimeFormatter formatter =
DateTimeFormatter.ofPattern("dd-MMM-yy", Locale.US);
Tcan1990 applicant = tcan1990Repository.findOne(new Tcan1990PK("000000009", 888067));
assertEquals(LocalDateTime.parse("10-APR-90",formatter),applicant.getPymtDt());
}
Я не могу добавить 'кандидат.getPymtDt(). AtStartOfDay()', и я все равно получаю ту же ошибку. Поле LocalDateTIme – Drew1208
Обновлен код для удаления atStartOfDay(). есть ли время в строке, которую вы проходите? Утверждение будет терпеть неудачу. ты в порядке с утверждением только местной даты? assertEquals (LocalDate.parse («10-APR-1990», formatter), претендент.getPymtDt(). toLocalDate()); – Veeram
My IDE предупреждает о «неконвертируемых типах LocalDate и LocalDateTime», и я получил сообщение об ошибке «java.lang.AssertionError: Ожидаемое: 2008-02-08 Актуально: 2008-02-08T00: 00' так кажется работая, но мне нужно исправить разбор – Drew1208