Это приложение с определённой переодичностью запрашивает данные о погоде в городе Минска и сохраняет эти данные в базу. По умолчанию эта периодичность равняется минуте, поменять её можно в конфигурационном файле.
-
Приложение использует MySql, поэтому она должна быть установлена. Скрипт для создания базы данных лежит в дериктории resources, но им пользоваться не обязательно, так как приложение настроено создавать базу данных, если она отсутствует.
-
После клонирования репозитория для запуска приложение используем команду ниже:
-
mvn clean spring-boot:run
-
Приложение запущено, теперь можно протестировать его с помощью Postman или же в командной строке с помощью curl -v request.
Первый endpoint позволяет нам получить информацию о погоде, которая была сохранена последней в базе данных.
-
http://localhost:8090/current-weather
Второй и третий endpoint рассчитывает нам среднию температуру. Второй endpoint считает среднию температуру сегодня, а третий рассчитывает её в промежутке.
-
http://localhost:8090/average-temp
Для третьего endpoint очень важен формат даты в запросе, если формат будет другим, то расчеты производиться не будут. Образец формата dd-mm-yy.
-
http://localhost:8090/average-temp?from=17-12-2023&to=18-12-2023
Если тестировать через командную строку то запросы выглядели бы следуйщим образом:
-
curl -v localhost:8090/current-weather
-
curl -v localhost:8090/average-temp
-
curl -v localhost:8090/average-temp?from=17-12-2023&to=18-12-2023
Так же прошу заметить, что приложение анализирует только те данные о погоде, которые оно собрала в реальном времени, то есть анализ происходит текущей и прошедшей погоды, без каких-либо прогнозов в будущем.