The course focuses on the access of Java applications to the database. In the course, we will first look at the low-level approach to working with the database using JDBC & JdbcTemplate, which is especially suitable for batch processing, then [...]
  • JAVADB
  • Duration 5 days
  • 50 ITK points
  • 6 terms
  • Praha (36 000 Kč)

    Brno (36 000 Kč)

    Bratislava (1 650 €)

  • Intermediate

The course focuses on the access of Java applications to the database. In the course, we will first look at the low-level approach to working with the database using JDBC & JdbcTemplate, which is especially suitable for batch processing, then what programmers should know about SQL so as not to swear that the database is slow (usually not, it is poorly used), but we will mainly focus on the efficient use of the database using JPA and Spring Data JPA.

»
  • The course assumes knowledge and experience with programming in Java at the level of the JAVAPROG2 and JAVADB course
  • Expert explanation with practical examples, exercises on computers.
  • Printed presentations of the subject matter.

Course syllabus

JDBC & JdbcTemplate

  • HikaciCP
  • Connection pool settings
  • Batch update
  • Soft parsing vs. hard parsing
  • SQL query optimization
  • Execution plan
  • Indices

JPA Entity

  • Types (Primitive, String, Date & Time, Numeric, Binary, UUID, ...)
  • Generate primary key value

Links between entities

  • @OneToMany, @ManyToOne, @OneToOne, @ManyToMany
  • Fetching strategy
  • FetchType.EAGER Vs. FetchType.LAZY
  • Bidirectional & unidirectional ties
  • N + 1 problem
  • LazyInitializationException
  • Open Session In View Anti-Pattern
  • join fetch, JPA entity graph

Transaction

  • ACID
  • Why (not) use two-phase commit
  • Flush mechanism & when flush operation occurs

Other JPA topics

  • HQL (Hibernate Query Language)
  • Different inheritance strategies: single table, join table, table-per-class
  • JPA Batching insert / update / delete operations
  • Logging of SQL operations
  • Pageable & Sort
  • Criteria API & Query DSL
  • Spring JPA Data & custom methods on JpaRepository interface
  • Spring Data REST

Caching

  • Database level caching
  • First level cache, second level cache

Locking

  • Pessimistic & optimistic locking
Current offer
Training location
Course language

The prices are without VAT.