EIEIOTECHNOVATION
← Training programmes

EIEIO / PROGRAMMING & DEVELOPMENT

Spring Boot Developer 06.2020

Course overview and objectives

2 days

OVERVIEW

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.

Please note that this course is a subset of the material in our 4-day Spring: Core Training course - there is no need to take both courses. This course is recommended if you have a good working knowledge of Spring Basics (see

Prerequisites) but are new to Spring Boot.

COURSE OBJECTIVES

By the end of the course, you should be able to meet the following objectives:

Describe 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

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

Course Outline :: Spring Boot Developer::

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

COURSE MODULES

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 web-site

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

Course Outline :: Spring Boot Developer::

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 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 Actuator endpoints

Custom Metrics

Health Indicators

Creating custom Health Indicators

External monitoring systems

Spring Boot Testing Enhancements

Spring Boot testing overview

Integration testing using @SpringBootTest

Slices to test different layers of the application

Programme scope, delivery arrangements and suitability are confirmed during enquiry.