разработки современных веб-приложений. • Один из наиболее популярных фреймворков в Java. • Решено большое количество типичных задач (REST-сервисы, работа с БД, кэширование, авторизация и безопасность). • Легко начать работу с фреймворком (за счёт Spring Boot).
• Spring Boot – часть, упрощающая конфигурацию. • Spring Data – доступ к данным (различные БД). • Spring Security – авторизация и разграничение доступа. • Spring Integration – набор утилит для интеграции.
поверх TCP. • Один из наиболее распространённых протоколов. • Много готовых реализаций клиентов и серверов + решены основные задачи (авторизация, шифрование, кэширование и т.д.). Основные сущности протокола: • HTTP-методы – GET, POST, PUT, DELETE (основные). • Параметры запроса, а также тело запроса для POST и PUT методов. • Заголовки запроса и ответа. • Тело ответа. • Коды ответа (1xx, 2xx, 3xx, 4xx, 5xx).
RFC и разнообразные спецификации! Пример основных спецификаций по HTTP: • IETF RFC HTTP 1.1 - https://tools.ietf.org/html/rfc2616 • IETF RFC по форматам дат и времени - https://tools.ietf.org/html/rfc3339 • Как читать RFC от IETF - https://www.ietf.org/blog/how-read-rfc/ • Вот тут есть весь список от IETF - https://www.rfc-editor.org/rfc-index.html
для взаимодействия на основе протокола HTTP. • Для различных типов действий используются разные HTTP-методы (посмотрим на примере и попробуем реализовать). • Основной формат данных для запроса / ответа - JSON (реже XML). • Нет строго стандарта, больше похож на набор практик.
пользователями: • Метод всех пользователей – GET /user/ • Метод получения пользователя по ID – GET /user/:id • Метод создания пользователя – POST /user/ • Метод удаления пользователя – DELETE /user/:id