java8 временной пакет для выполнения блока кода на основе часового пояса GMT - PullRequest
0 голосов
/ 09 сентября 2018

У нас есть требование, относящееся к java.time, я думаю, что смогу выполнить это с помощью этого пакета, но не получу правильный подход; вот сценарий

наше приложение работает на сервере, мы не знаем локальный часовой пояс сервера. Но мы должны запускать наш блок кода приложения (в то время как цикл) с 2:00 до 6:00 по Гринвичу ежедневно, как я могу этого достичь, заранее спасибо.

LocalTime localTime = LocalTime.now();
System.out.println("Localtime: "+localTime);
LocalTime localTimeGMT = LocalTime.now(ZoneId.of("GMT"));

Ответы [ 2 ]

0 голосов
/ 09 сентября 2018

Вы можете использовать ZonedDateTime и указать timeZone. Вы можете получить час из ZonedDateTime.

System.out.println(ZonedDateTime.now(ZoneId.of("GMT")));

            int hour = ZonedDateTime.now(ZoneId.of("GMT")).getHour();
            if(hour>=2 && hour<6)
            {
                //some logic 
            }
0 голосов
/ 09 сентября 2018

Чтобы проверить, находится ли текущее время по Гринвичу между 2 и 6 часами утра, сделайте следующее:

int hour = LocalTime.now(ZoneOffset.UTC).getHour();
if (hour >= 2 && hour < 6)
    System.out.println("It is now between 2 AM and 6 AM GMT");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...