Gopas Java Bootcamp (GJB) je nová rozvíjející se oblast Javovských kurzů v Gopasu, která vznikla jako reakce na potřebu nabízet aktuální Javovská témata. V těchto kurzech se účastníci mohou naučit těm nejmodernějším [...]
  • GJB_SBREST
  • Délka 4 dny
  • 40 ITK bodů
  • 5 termínů
  • Praha (28 800 Kč)

    Brno (28 800 Kč)

    Bratislava (1 180 €)

  • Gopas Java Bootcamp (GJB) je nová rozvíjející se oblast Javovských kurzů v Gopasu, která vznikla jako reakce na potřebu nabízet aktuální Javovská témata. V těchto kurzech se účastníci mohou naučit těm nejmodernějším přístupům programování pod vedením zkušených vývojářů. Jedná se o neautorizované kurzy té nejvyšší kvality. Poznáte je podle prefixu GJB v kódu kurzu. Aktuálně jsou v této oblasti tři nové kurzy GJB_SBREST, GJB_SPRINGDB a GJB_SBREST, nicméně brzy očekáváme rozšíření této nabídky.
  • 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).
  • »
    • Základní znalosti a zkušenosti s tvorbou webových aplikací
    • Základní znalosti a zkušenosti s programováním v Java SE
    • Odborný výklad s praktickými ukázkami, cvičení na počítačích.
    • Tištěné prezentace probírané látky.

    Úvod do webových služeb

    • Účel
    • Srovnání REST, GraphQL, SOAP
    • Výhody a nevýhody jednotlivých přístupů

    JSON, XML

    • Srovnání XML a JSON
    • XML a jmenné prostory
    • XML Schema (XSD, validace
    • Sestavení XSD z existujícího souboru XML
    • JSON, JSON Schema
    • Jackson, konfigurace ObjectMapperu

    REST serverová strana

    • REST architektura
    • Spring MVC
    • RequestMapping, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @PatchMapping
    • RestController, @Controller

    Zachytávání výjimek (@RestControllerAdvice)

    • Caching
    • Swagger dokumentace

    REST klientská strana

    • Synchronní vs asynchronní volání
    • HTTP hlavičky
    • RestTemplate
    • WebClient
    • Testovací nástroje (Postman, SoapUI, ...)

    GraphQL

    • Smysl vzniku GraphQL
    • Výhody a nevýhody GraphQL
    • GraphQL Schema
    • Tvorba a vykonávání dotazů
    • Mutation
    • Spring GraphQLQueryResolver
    • Testovací nástroje

    Web scraping

    • Co dělat pokud není žádná API přístupná?
    • HtmlUnit
    • Selenium
    • XPath

    Databázový přístup

    • JPA (návrh, mapování entit, dotazování, EntityManager)
    • Spring Data (stránkování, řazení)
    • Transakce
    • Optimalizace dotazů

    Zabezpečení webových služeb a Spring Security

    • Implementace zabezpečení webových požadavků ve Spring frameworku
    • HTTP Basic autentizace (username + password)
    • Ukládání a validace hesel v databázi
    • OpenID Connect a OAuth2
    Aktuální nabídka
    Školicí místo
    Jazyk kurzu

    Uvedené ceny jsou bez DPH.