Webové služby REST a GraphQL ve Spring Bootu (GJB_SBREST)

Kurz webových služeb pokrývá možnosti komunikace mezi systémy prostřednictvím Representational State Transfer (REST) a GraphQL. Začíná výkladem datových typů JavaScript Object Notation (JSON) a Extensible Markup Language (XML) včetně možností mapování pomocí knihovny Jackson a Java Architecture for XML Binding (JAXB). V další části budou vysvětleny koncepty architektury REST a její implementace ve Springu Bootu a zdokumentování prostřednictvím knihovny Swagger. Na rozbor výhod a nevýhod RESTu navazuje představení dotazovacího jazyka GraphQL od společnosti Facebook. Dále budou ukázány možnosti získávání dat ze serverů, které neposkytují webové služby, za pomocí nástroje Selenium. V závěrešné části budou probrány způsoby, kterými lze tyto webové služby zabezpečit prostřednictvím Spring Security, případně pomocí OpenID Connect (nadstavba nad OAuth2).

Kurz neprobírá do hloubky přístup do databáze, nicméně pro end-to-end dotaz na webové služby se využije modul Spring Data (nadstavba nad JPA využívající Hibernate framework).