Kurz se zaměřuje na přístup Java aplikací do databáze. V rámci kurzu se podíváme nejprve na low-level přístup práce s databází pomocí JDBC & JdbcTemplate, což je vhodné zejména pro batchové zpracování, dále co by měli programátoři vědět o SQL [...]
  • JAVADB
  • Délka 5 dní
  • 50 ITK bodů
  • 6 termínů
  • Praha (36 000 Kč)

    Brno (36 000 Kč)

    Bratislava (1 650 €)

  • Mírně pokročilý

Kurz se zaměřuje na přístup Java aplikací do databáze. V rámci kurzu se podíváme nejprve na low-level přístup práce s databází pomocí JDBC & JdbcTemplate, což je vhodné zejména pro batchové zpracování, dále co by měli programátoři vědět o SQL tak, aby nenadávali na to, že je databáze pomalá (obyčejně není, jenom se špatně používá), ale hlavně se zaměříme na efektivní používání databáze pomocí JPA a Spring Data JPA.

»
  • Kurz předpokládá znalosti a zkušenosti s programováním v jazyce Java na úrovni kurzu JAVAPROG2 a JAVADB
  • Odborný výklad s praktickými ukázkami, cvičení na počítačích.
  • Tištěné prezentace probírané látky.

Osnova kurzu

JDBC & JdbcTemplate

  • HikaciCP
  • Nastavení connection poolu
  • Batch update
  • Soft parsing vs. hard parsing
  • Optimalizace SQL dotazů
  • Exekuční plán
  • Indexy

JPA Entity

  • Typy (primitivní, String, Date & Time, Numeric, Binary, UUID, ...)
  • Generování hodnoty primárního klíče

Vazby mezi entitami

  • @OneToMany, @ManyToOne, @OneToOne, @ManyToMany
  • Fetching strategie
  • FetchType.EAGER vs. FetchType.LAZY
  • Bidirectional & unidirectional vazby
  • N+1 problém
  • LazyInitializationException
  • Open Session In View Anti-Pattern
  • join fetch, JPA entity graph

Transakce

  • ACID
  • Proč (ne)používat dvoufázový commit (two-phase commit)
  • Flush mechanismus & kdy dochází k flush operaci

Další JPA témata

  • HQL (Hibernate Query Language)
  • Různé strategie dědičnosti: single table, join table, table-per-class
  • JPA Batching insert / update / delete operací
  • Logování SQL operací
  • Stránkování (Pageable) & řazení (Sort)
  • Criteria API & Query DSL
  • Spring Data JPA & custom metody na JpaRepository interface
  • Spring Data REST

Caching

  • Caching na úrovni databáze
  • First level cache, second level cache

Locking

  • Pessimistic & optimistic locking
Aktuální nabídka
Školicí místo
Jazyk kurzu

Uvedené ceny jsou bez DPH.