SP-BOOT

Spring Boot: Developer Training

This 2-day course offers experience with Spring Boot and its major features, including auto-configuration, Actuator, Spring Boot testing framework and more. On completion, participants will have a foundation for creating enterprise and cloud-ready applications.
Course Details

Duration

2 days

Prerequisites

  • A good working knowledge on web application development using Java and an IDE (Eclipse, STS or IntelliJ).
  • Basic understanding of Spring: Java Config, component- scanning, Spring driven testing and Spring data-management (JdbcTemplate, @Transactional).
  • Experience using Java and build tools such as Maven or Gradle.

Target Audience

Application developers who want to increase their understanding of Spring and Spring Boot and a focus on fundamentals.

Skills Gained

  • Understand the benefits provided by Spring Boot
  • Initialize a project using Spring Boot Starters
  • Leverage Spring Boot's auto configuration features
  • Create simplified backing-store solutions using Spring Data JPA
  • Build a simple MVC application using Spring Boot, embedded Web Server and fat JARs or classic WARs
  • Build a RESTful Web application
  • Use Spring Security to secure Web and REST endpoints
  • Enable and extend metrics and monitoring capabilities using Spring Boot actuator
  • Leverage advance configuration capabilities
  • Utilize Spring Boot enhancements to testing
Course Outline
  • Introduction to Spring Essentials
    • Why Spring
    • Configuration using Spring
    • Bean creation
    • Data Management
  • Spring Boot Introduction
    • Introduction to Spring Boot Features
    • Value Proposition of Spring Boot
    • Creating a simple Boot application using Spring Initializr website
  • Spring Boot Dependencies, Auto-configuration, and Runtime
    • Dependency management using Spring Boot starters
    • How auto-configuration works
    • Configuration properties
    • Overriding auto-configuration
    • Using CommandLineRunner
  • JPA with Spring and Spring Data
    • Quick introduction to ORM with JPA
    • Benefits of using Spring with JPA
    • JPA configuration in Spring
    • Configuring Spring JPA using Spring Boot
    • Spring Data JPA dynamic repositories
  • Spring MVC Architecture and Overview
    • Introduction to Spring MVC and request processing
    • Controller method signatures
    • Using @Controller, @RestController and @GetMapping annotations
    • Configuring Spring MVC with Spring Boot
    • Spring Boot packaging options, JAR or WAR
  • Rest with Spring MVC
    • An introduction to the REST architectural style
    • Controlling HTTP response codes with @ResponseStatus
    • Implementing REST with Spring MVC, @RequestMapping, @RequestBody and @ResponseBody
    • Spring MVC's HttpMessageConverters and automatic content negotiationageConverters and automatic content negotiation
  • Spring Security
    • What problems does Spring Security solve?
    • Configuring authentication
    • Implementing authorization by intercepting URLs
    • Authorization at the Java method level
    • Understanding the Spring Security filter chain
    • Spring security testing
  • Actuators, Metrics and Health Indicators
    • Exposing Spring Boot ActuĂ„ator endpoints
    • Custom Metrics
    • Health Indicators
    • Creating custom Health Indicators
    • External monitoring systems
  • Spring Boot Testing Enhancements
    • Spring Boot testing overview
    • Integration testing using @SpringBootTest
    • Web slice testing with MockMvc framework
    • Slices to test different layers of the application