Learning Patterns Your Source for Quality Technology Courseware

Introduction to Spring Boot 2 (Spring 5 based)

As the Spring framework has grown, creating and configuring Spring applications has become more and more complex. Spring Boot takes an “opinionated” view of an application (via intelligent defaults) that minimizes configuration and boilerplate Spring code. Spring Boot makes it easier to use Spring’s many frameworks, and adds advanced capabilities such as health monitoring.

This course introduces Spring Boot from the ground up, including overviews of building blocks such as maven. It covers the key features and capabilities of Spring Boot, and teaches experienced Spring developers the skills they need to use Spring Boot productively.

This course covers Spring Boot 2 and Spring 5 - the current releases of these frameworks.

Course Information:

Course Code: SPRING-BOOT2

Price: $ 150

Duration: 3 days

Labs: many hands-on labs (minimum 50% of course)

Prerequisites:

Supported Software Environments:

Course Objectives:

  • Get an overview of Spring Core (focus on @Configuration) and maven/gradle - building blocks for Spring Boot
  • Understand the needs that Spring Boot fulfills
  • Use Spring Boot starters and start.spring.io to easily create new applications
  • Understand and use Spring Boot’s auto-configuration
  • Customize your application configuration
  • Understand and use Spring Boot’s Spring Data / Spring Data JPA capabilities
  • Understand and use Spring Boot’s Web capabilities (focusing on Spring REST), including embedded servlet containers
  • Be familiar with Spring Boot Data REST
  • Use Spring Security with Spring Boot
  • Understand and use Spring Boot’s Actuator
  • Use Actuator endpoints to monitor and manage applications
  • Be familiar with and work with Spring DevTools
  • Be familiar with the Spring CLI

Course Outline:

  • Session 1: Spring Configuration Overview
    • Spring Review - XML and @Component
    • Dependency Injection
    • Java-based Configuration (@Configuration)
    • Integrating Configuration of Different Types
  • Session 2: Introduction to Spring Boot
    • Brief maven Overview
    • Intro to Spring Boot - What is Spring Boot and What It Does
    • Spring Boot Hello World / SpringApplication
    • SpringBootApplication / CommandLineRunner / ApplicationRunner
  • Session 3: Configuration and Customization
    • Working with Properties - YAML and .properties
    • Logging and its Configuration
    • Spring TestContext Framework
    • Auto-configuration Overview
    • Customization
  • Session 4: Spring Boot Database Support
    • Basic Auto-configuration - Datasource and Pooling
    • Configuration Properties
    • Spring Boot's JPA Support - spring-boot-starter-data-jpa
    • Spring Boot Data (with Data-JPA in Detail)
    • Using Spring Boot Data - CrudRepository/JpaRepository
    • Defining Queries with Spring Boot Data
  • Session 5: Spring Boot Web/REST and Security
    • DispatcherServlet Review
    • Web Starters and Configuration spring-boot-starter-web
    • Using Embedded Servers (Tomcat, Netty)
    • Deploying to an External Server
    • Spring Security Overview (Web)
    • spring-boot-starter-security - Auto-configuration and Customization
    • Spring Boot Data Rest - Generated Web Services from Repositories
  • Session 6: Actuator and Devtools:
    • Actuator Overview and Capabilities
    • Actuator Endpoints
    • Custom Actuators and Health Checks
    • Devtools Overview
    • Other Tools and Features
  • Session 7: Spring Boot CLI
    • Overview and Capabilities
    • Grabbing / @Grab
    • Other Capabilities