The course focuses on Spring Framework and Spring Boot, currently the most widely used framework for writing web applications in Java. In the course we will first go through Spring container, its services Inversion of Control (IoC), Dependency [...]
  • JAVASPRING
  • Duration 5 days
  • 50 ITK points
  • 6 terms
  • Praha (36 000 Kč)

    Brno (36 000 Kč)

    Bratislava (1 650 €)

  • Intermediate

The course focuses on Spring Framework and Spring Boot, currently the most widely used framework for writing web applications in Java. In the course we will first go through Spring container, its services Inversion of Control (IoC), Dependency Injection and Aspect Oriented Programming (AOP), we continue creating a web application using Spring Boot and Spring Web MVC (Rest Controller), integration with the database using JDBC and JPA ( Spring Data JPA). Finally, we secure the application with Spring Security.

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

Introduction to Spring

  • Java Configuration & Spring context
  • Annotations @Configuration, @Bean, @Import
  • Bean scope (singleton, prototype, ...)
  • Create Spring context, launch Spring application and get Spring Bean
  • Spring profiles
  • External properties

Dependency Injection using annotations

  • Component scanning
  • Autowiring using @Autowired
  • @Component, @Service, @Controller annotation
  • Java Configuration vs. annotation vs. XML configuration (legacy)
  • Lifecycle annotations: @PostConstruct, @PreDestroy
  • Spring Bean Lifecycle
  • Spring Bean Proxies

Aspect Oriented Programming

  • What problems does AOP solve?
  • Spring AOP implementation and resulting limitations / implementation features
  • Annotations that are based on AOP

Data Access & JDBC + Spring & JPA (Hibernate)

  • JdbcTemplate
  • JPA & Spring (Boot)
  • Spring Data JPA (JpaRepository interface)
  • Entity life cycle

Database transactions

  • @Transactional
  • Transaction management & Spring
  • Transaction dissemination, commit, rollback

Spring Boot

  • Creating a web Spring Boot application
  • Spring Boot starters
  • Auto configuration
  • Change configuration using properties, yaml, command line parameters
  • Packaging Spring Boot application to Docker image
  • Spring Boot Actuator & Integration at Prometheus

Spring application testing

  • Spring and TDD (Test Driven Development)
  • Spring 5 & integration tests with JUnit 5
  • @ActiveProfiles, @Sql
  • Testing Spring Boot applications
  • Test containers

Spring MVC and creation of REST applications

  • Introduction to REST architecture
  • @RestController, @GetMapping, @PostMapping, ...
  • Exception handling using @ExceptionHandler and @ControllerAdvice
  • OpenAPI (Swagger)
  • Three-tier architecture
  • DTO (Data Transfer Object) & MapStruct (successor to Dozer, Orika)
  • Bean Validation

Spring Security

  • General web application security
  • Spring Security configuration
  • Certificate configuration for Spring Boot applications
  • URL and method level authorization
Current offer
Training location
Course language

The prices are without VAT.