Upgrade to Pro — share decks privately, control downloads, hide ads and more …

liga-summer-2019-practice-3rd-lecture

 liga-summer-2019-practice-3rd-lecture

Andrey Popikov

July 31, 2019
Tweet

More Decks by Andrey Popikov

Other Decks in Programming

Transcript

  1. Кратко о Spring Почему именно Spring: • Хорошо подходит для

    разработки современных веб-приложений. • Один из наиболее популярных фреймворков в Java. • Решено большое количество типичных задач (REST-сервисы, работа с БД, кэширование, авторизация и безопасность). • Легко начать работу с фреймворком (за счёт Spring Boot).
  2. Основные части Spring • Spring (IoC, DI) – ядро фреймворка.

    • Spring Boot – часть, упрощающая конфигурацию. • Spring Data – доступ к данным (различные БД). • Spring Security – авторизация и разграничение доступа. • Spring Integration – набор утилит для интеграции.
  3. Немного об HTTP Основные моменты: • Текстовый протокол, который работает

    поверх TCP. • Один из наиболее распространённых протоколов. • Много готовых реализаций клиентов и серверов + решены основные задачи (авторизация, шифрование, кэширование и т.д.). Основные сущности протокола: • HTTP-методы – GET, POST, PUT, DELETE (основные). • Параметры запроса, а также тело запроса для POST и PUT методов. • Заголовки запроса и ответа. • Тело ответа. • Коды ответа (1xx, 2xx, 3xx, 4xx, 5xx).
  4. Где взять дополнительную информацию об HTTP Важно – учимся читать

    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
  5. Что такое RESTful API Основные моменты REST: • Формат API

    для взаимодействия на основе протокола HTTP. • Для различных типов действий используются разные HTTP-методы (посмотрим на примере и попробуем реализовать). • Основной формат данных для запроса / ответа - JSON (реже XML). • Нет строго стандарта, больше похож на набор практик.
  6. Пример RESTful API Небольшой пример описания RESTful API для управления

    пользователями: • Метод всех пользователей – GET /user/ • Метод получения пользователя по ID – GET /user/:id • Метод создания пользователя – POST /user/ • Метод удаления пользователя – DELETE /user/:id
  7. Дополнительные материалы по теме • Книга «Spring в действии» -

    https://www.ozon.ru/context/detail/id/31239365/ • Официальная документация и статьи (link, link) • https://start.spring.io/