Я мигрирую свою кодовую базу с Joda-Time в Java.Time API. < /p>
У меня есть следующий метод с использованием Joda-Time (этот код уже работает в моем приложении): < /p>
private synchronized void scheduleToday(LocalTime time) {
long now = System.currentTimeMillis();
task = normalScheduler.schedule(this, time.toDateTimeToday().getMillis() - now, TimeUnit.MILLISECONDS);
}
< /code>
Как я могу переписать эту логику, используя Java.Time API при сохранении того же поведения?private synchronized void scheduleToday(LocalTime time) {
long now = System.currentTimeMillis();
// task = normalScheduler.schedule(this, time.toDateTimeToday().getMillis() - now, TimeUnit.MILLISECONDS); (joda-time implementation) below three lines is implemention using java.time
LocalDateTime dateTimeToday = LocalDateTime.of(LocalDate.now(), time);
long millis = dateTimeToday.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
task = normalScheduler.schedule(this, millis - now, TimeUnit.MILLISECONDS);
}
< /code>
Не уверен, что код будет работать или нет?private synchronized void scheduleTomorrow(LocalTime time) {
LocalDate tomorrow = new LocalDate().plusDays(1);
long now = System.currentTimeMillis();
task = normalScheduler.schedule(this, tomorrow.toDateTime(time).getMillis() - now, TimeUnit.MILLISECONDS);
}
< /code>
Таким образом, ниже приведен код, который я использую в своем приложении (Joda -time):
private synchronized void meduretoday (localtime time) {
long сейчас = System.currentTimeMillis ();
task = normalscheduler.schedule (thise.todateTeTeTemetOday (). TimeUnit.milliseconds);
} < /p>
private synchronized void scheduleTomorrow(LocalTime time) {
LocalDate tomorrow = new LocalDate().plusDays(1);
long now = System.currentTimeMillis();
task = normalScheduler.schedule(this, tomorrow.toDateTime(time).getMillis() - now, TimeUnit.MILLISECONDS);
}
< /code>
Что может использовать с помощью java.time API для этого метода PradeLetOmorrow? < /li>
< /ol>
Подробнее здесь: https://stackoverflow.com/questions/796 ... etoday-get
Переход от Joda-Time в Java.Time: Как заменить время. ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Joda Date/Time Type `org.joda.time.days` не поддерживается по умолчанию:
Anonymous » » в форуме JAVA - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-