Skip to content
  • Sign In
  • Try Now
View all events
Spring Boot

Hands-On Spring Boot in 3 Weeks

Published by Pearson

Intermediate content levelIntermediate

Hands-on training for creating industrial-strength Spring Boot Applications

  • Taught by experienced author and trainer Andy Olsen
  • Exercises in every section
  • Weekly assignments with online solutions with real-world projects you can use in your own work

Spring Boot is a tremendously important framework and platform for creating enterprise applications that embrace REST services, database integration, messaging, security, testing, containerization, and deployment on-premise or on the cloud. Learning Spring Boot is difficult, and it’s important to learn in a pragmatic way while practicing real-world skills.

This 3-week course is designed to teach you from the ground up. Each week includes deep-dive training with Q&A and hands-on exercises so you can see real projects in action. You are given a homework assignment so you can test your own skills and learn by doing. This is an active class designed to give you the knowledge and the practical skills you need to benefit from all the best that Spring Boot has to offer. You learn how to use the eclectic mix of Spring Boot technologies to create robust, reliable, and performant industrial-scale applications efficiently and according to accepted best practices.

Is extensively hands on in nature

Uses a combination of instructional training and working demos to illustrate key topics Is accompanied throughout with hands-on exercises so you can have a go during the class Includes weekly assignments so you can apply your new-found knowledge in realistic and holistic scenarios Includes full online solutions for all assignments, as well as a full walkthrough and a Q&A session so you can clarify any details with Andy

Week 1

Sets you up with the core knowledge you need to get started creating Spring Boot applications. Learn how to define component classes, manage bean dependencies and lifetimes, and define Java configuration classes. Challenge yourself with a homework assignment that will put your learning into action.

Week 2

Is all about creating enterprise-scale Spring Boot applications. This week starts with showing how to integrate data sources into a solution, by using JPA and Spring Data repositories. You then learn how to define and consume REST services, to enable communication between distributed applications. The week then ends with a practical hands-on assignment.

Week 3

Rounds out the training by taking you to the next level with industrial-strength Spring Boot technologies and techniques. You learn about the importance of messaging in real-world applications and see how to use Kafka to create efficient and performant message-based solutions. Learn how to containerize a Spring Boot application using Docker and see how this can help you create a microservice architecture. Finally, you see how to secure and test your application to ensure it operates safely and correctly.

At the end of the session we’ll provide a thorough tutorial that guides you through all the steps to create a complete Spring Boot application with all the features covered during the 3 weeks. Full step-by-step solutions will be available online so you can check your progress.

What you’ll learn and how you can apply it

  • Creating Spring Boot web applications
  • Managing Spring Boot beans, properties, and application configuration
  • Creating and consuming REST services
  • Integrating with relational databases
  • Implementing message-based solutions by using Kafka
  • Containerizing Spring Boot applications
  • Securing Spring Boot applications by using OAUTH2
  • Testing Spring Boot applications

This live event is for you because...

  • You're a Java developer and you need to learn how to create enterprise applications using Spring Boot
  • You have some existing experience in Spring Framework or Spring Boot and you want to take your knowledge to the next level
  • You're a team lead or architect and you want to see how Spring Boot can help you design and deliver enterprise systems

Prerequisites

  • Solid programming experience in Java
  • Familiarity with web applications
  • An awareness of contemporary application architecture is beneficial but not essential
  • You need to have the JDK and IntelliJ IDEA Ultimate Edition installed to run the demos, exercises, and homework assignments for this course. Instructions for downloading and installing these tools is available here

The repo also contains:

  • Instructions for downloading and installing the latest JDK and IntelliJ IDEA Ultimate Edition
  • All the code for the demos and exercises
  • All the lab docs and code for the homework assignments

Recommended Preparation:

Recommended Follow-up:

Watch Reactive Spring Boot, 2nd Edition, by Josh Long (Video_

Schedule

The time frames are only estimates and may vary according to how the class is progressing.

Week 1: Core Spring Boot

Introduction to Spring Boot (10 minutes)

  • Overview of Spring Boot
  • The role of Spring Boot in the enterprise
  • Tools for creating Spring Boot applications
  • Creating a Simple Spring Boot Application (30 minutes)
  • Creating a Spring Boot application using IntelliJ
  • Understanding the Maven project structure
  • Exercise: Creating a Spring Boot console application

Creating a Spring Boot Web Application (30 minutes)

  • Overview of creating Spring Boot web applications
  • Understanding JAR files vs. WAR files
  • Adding static content
  • Defining application properties
  • Exercise: Creating a Spring Boot web application
  • Break

Managing Beans and Dependency Injection (40 minutes)

  • Defining component classes
  • Accessing beans in the application context
  • Understanding bean scope and initialization
  • Autowiring beans
  • Exercise: Creating and using beans

Injection Techniques (30 minutes)

  • Using Spring Expression Language (SpEL)
  • Working with command-line arguments
  • Exercise: Using injection techniques

Defining Java Configuration Classes (50 minutes)

  • Defining a configuration class and bean methods
  • Specifying bean scope and initialization
  • Defining beans in the application class
  • Configuring bean dependencies
  • Exercise: Creating beans by using configuration classes
  • Break

Spring Boot Techniques (40 minutes)

  • Managing properties files
  • Defining YAML properties files
  • Using Spring profiles
  • Exercise: Working with properties and profiles

Introduction to Week 1 Assignment, Q&A (10 minutes)

Week 2: Enterprise Spring Boot

Recap Week 1 Assignment (20 minutes)

  • Q&A

Integrating with Data Sources (40 minutes)

  • Understanding Spring Data
  • Getting started with JPA
  • Defining JPA entity classes
  • Exercise: Defining entity beans

Using the JPA API to Query and Modify Entities (40 minutes)

  • Querying entities
  • Modifying entities
  • Managing transactions
  • Exercise: Managing entity beans

Working with Spring Data Repositories (30 minutes)

  • Understanding Spring Data repositories
  • Accessing a relational database by using a Spring Data repository
  • Exercise: Defining and using a Spring Data repository
  • Break

Implementing a Simple REST Service (30 minutes)

  • Getting started with REST services in Spring Boot
  • Defining a simple REST service
  • Allowing cross-origin requests (CORS)
  • Exercise: Defining a simple REST service

Implementing a Full REST Service (40 minutes)

  • Scenario
  • Implementing POST, PUT, and DELETE endpoints
  • Adding support for Swagger
  • Exercise: Defining a full REST service
  • Break

Defining a REST Client (30 minutes)

  • Defining a REST client application
  • How to consume a REST service
  • Exercise: Consuming a REST service

Introduction to Week 2 Assignment, Q&A (10 minutes)

Week 3: Industrial-Strength Spring Boot

Recap Week 2 Assignment (20 minutes)

  • Q&A

Getting Started with Messaging and Kafka (30 minutes)

  • Messaging essentials
  • Overview of Kafka
  • Installing and running Kafka
  • Running Kafka commands
  • Exercise: Getting started with Kafka
  • Break

Using the Kafka APIs (40 minutes)

  • Understanding topics, partitions, and consumers
  • Using Kafka producer and consumer APIs
  • Exercise: Sending and receiving messages to Kafka

Containerizing Spring Boot Applications (40 minutes)

  • Introduction to containerization and Docker
  • Understanding Docker images
  • A closer look at images and containers
  • Containerizing a Spring Boot application
  • Exercise: Containerizing a Spring Boot application
  • Break

Spring Cloud Microservices (30 minutes)

  • Overview of microservices
  • Implementing a microservice architecture using Spring Boot
  • Microservices circuit breakers
  • Exercise: Creating microservices by using Spring Boot

Authentication using OAUTH2 (30 minutes)

  • Introduction to OAUTH2
  • Configuring authentication and authorization
  • Implementing login and logout endpoints
  • Exercise: Securing a Spring Boot application
  • Break

Testing Spring Boot Applications (40 minutes)

  • Writing and running tests on beans
  • Mocking beans
  • Testing REST controllers
  • Testing Spring Data repositories
  • Exercise: Testing a Spring Boot application

Final Project: Create a complete Spring Boot application (10 mins)

Your Instructor

  • Andy Olsen

    Andy Olsen is a freelance consultant, instructor, and developer with more than 30 years of experience in IT. Andy began his professional career as a C/C++ developer and has also worked in Rust, Go, and other languages as the years passed. Andy is actively involved in a wide range of technologies including full-stack development, cloud native applications, data science, and more. Andy is passionate about technology education and runs training courses around the world across diverse market sectors.