В одном из моих вариантов использования я пытаюсь создать конвейер
всякий раз, когда я отправлял сообщение из пользовательского раздела, я отправлял метку времени в миллисекундах с типом данных LONG, поскольку в схеме столбец метки времени был определен как long.
Код, который я имел ранее в пользовательском разделе:
Date date = new Date();
long timeMilli = date.getTime();
System.out.println("date = " + date.toString() + " , time in millis = " + timeMilli);
Показать результат до того, как я отправил запись:
date = вт 26 марта 22:02:04 EDT 2019, время в миллисекундах = 1553652124063
значение вставлено в столбец отметки времени в таблице2:
3/27/2019 2: 02: 04.063000 AM
Поскольку он принимает британский часовой пояс (я полагаю), я поставил временное исправление на время, чтобы вычесть 4 часа из текущей временной метки, чтобы я мог сопоставить ее с американской временной меткой EST.
Date date = new Date();
Date adj_date = DateUtils.addHours(date,-4);
long timeMilli = adj_date.getTime();
System.out.println("date = " + date.toString() + " , time in millis = " + timeMilli);
Показать результат:
дата = вторник, 26 марта 22:04:43 ПО ВОСТОЧНОМУ ВРЕМЕНИ 2019, время в миллисекундах = 1553637883826
значение вставлено в столбец отметки времени в таблице2:
3/26/2019 10: 04: 43.826000 PM
Пожалуйста, дайте мне знать, если я что-то упустил, так как я не уверен, почему это происходит, когда я отправлял сообщение из пользовательского раздела.