4mBankTest.mp4
Проект выполнен с использованием SpringBoot. В ходе работы реализованы следующие эндпоинты:
- POST - Добавить модель;
- POST - Удалить модель;
- POST - Получение суммы двух чисел, идентифицируемых их именами;
- GET - Получить все модели из базы данных.
- В корневом каталоге проекта можно найти файл с экспортированной коллекцией запросов Postman в формате JSON: Эндпоинты для Postman
- Скрипт на сборку проекта находится здесь: sum_service.jar
Для запуска используйте команду: java -jar sum_service.jar
Для остановки проекта нажмите Ctrl + C
Настоящий SpringBoot прект имеет классическую трехслойную структуру:
- слой контроллеров, содержащий эндпоинты;
- слой сервисов, содержащий бизнесс логику;
- слой DAO(Data Access Object) или же слой репозиториев;
База данных используемая в проекте PostgreSQL.
Для выполнения поставленной задачи, была создана сущность:
Для настройки ответов JSON и исключениями был использован класс ExceptionHandler:
Для логирования методов используется класс MethodInspector
- "code": 400, "description": "Нельзя вводить пустую строку" - запрет ввода имен вида "", и " ";
- "code": 409, "description": "Конфликт версий: версия сущности, хранящаяся в базе данных, не соответствует версии, считанной из базы данных. - метод save() может выбрасывать исключение IllegalArgumentException
- "code": 409, "description": "Конфликт версий: версия сущности, хранящаяся в базе данных, не соответствует версии, считанной из базы данных." - метод save() может выбрасывать исключение OptimisticLockingFailureException
- "code": 400, "description": "Удаляемый объект не должен быть равен null." - появляется при вводе пустой строки либо неверного значения
- "code": 400, "description": "Отсутствует одно из слагаемых" - появляется если ввести пустую строку вместо имени одного из слагаемых
- "code": 400, "description": "Имя слагаемого введено не верно." - появляется если ввести неверное имя слагаемого
- "code": 200, "description": "ok", "sum": 4 - пример верного ответа для ендпоинта /sum
- "code": 200, "description": "ok" - пример верного ответа для ендпоинтов /add и /remove
Проект использует следующие технологии и библиотеки:
- Spring Boot: Фреймворк для создания веб-приложений на языке Java.
- Hibernate: Фреймворк для работы с базой данных.
- PostgreSQL: База данных для разработки.
- Postman Инструменты для работы с эндпоинтами.