Spring Boot 3 Online Course
About the course
Spring Boot is a robust framework that streamlines REST service development, allowing developers to quickly create production-ready, Spring-based applications. In this course, you’ll learn to build web applications and REST APIs with Spring Boot, leveraging auto-configuration, Spring Initializr, and starter projects for a seamless setup.
This course is ideal for anyone interested in learning about Spring Boot and its advantages. It’s perfect for those looking to build their first RESTful API or web application with Spring Boot.
What You Will Learn:
- Build web applications using Spring Boot 3.
- Create Spring MVC controllers to manage requests and responses.
- Connect to databases with JPA/Hibernate and Spring Boot.
- Write unit and integration tests with Spring Boot Starter Test.
- Develop REST APIs using Spring Boot and follow best practices.
- Configure Spring Security for secure Spring Boot REST APIs.
Detailed Course Curriculum
Introduction
- Course Preview
- Course Learning Objective
- Installing Java and Eclipse
Introduction to Spring Boot in 10 Steps - V2
- Step 01 - Getting Started with Spring Boot - Goals
- Step 02 - Understanding the World before Spring Boot – 10,000 Feet Overview
- Step 03 - Setting Up New Spring Boot Project with Spring Initializr
- Step 04 - Build a Hello World API with Spring Boot
- Step 05 - Understanding the Goal of Spring Boot
- Step 06 - Understanding Spring Boot Magic - Spring Boot Starter Projects
- Step 07 - Understanding Spring Boot Magic - Autoconfiguration
- Step 08 - Build Faster with Spring Boot DevTools
- Step 09 - Get Production-Ready with Spring Boot - 1 - Profiles
- Step 10 - Get Production-Ready with Spring Boot - 2 - ConfigurationProperties
- Step 11 - Get Production-Ready with Spring Boot - 3 - Embedded Servers
- Step 12 - Get Production-Ready with Spring Boot - 4 - Actuator
- Step 13 - Understanding Spring Boot Versus Spring Versus Spring MVC
- Step 14 - Getting Started with Spring Boot - Review
Web Application with Spring Boot - V2
- Step 00 - Introduction to Building Web App with Spring Boot
- Step 01 - Creating Spring Boot Web Application with Spring Initializr
- Step 02 - Quick Overview of Spring Boot Project
- Step 03 - First Spring MVC Controller, @ResponseBody, @Controller
- Step 04 - 01 - Enhancing Spring MVC Controller to Provide HTML Response
- Step 04 - 02 - Exploring Step-by-Step Coding and Debugging Guide
- Step 05 - Redirect to a JSP Using Spring Boot - Controller, @ResponseBody and Vi
- Step 06 - Exercise - Creating LoginController and Login View
- Step 07 - Quick Overview - How Does Web Work - Request and Response
- Step 08 - Capturing QueryParams Using RequestParam and First Look at Model
- Step 09 - Quick Overview - Importance of Logging with Spring Boot
- Step 10 - Understanding DispatcherServlet, Model 1, Model 2, and Front Controller
- Step 11 - Creating a Login Form
- Step 12 - Displaying Login Credentials in a JSP using Model
- Step 13 - Add Hard-Coded Validation of User ID and Password
- Step 14 - Getting Started with Todo Features - Creating Todo and TodoService
- Step 15 - Creating First Version of List Todos Page
- Step 16 - Understanding Session Versus Model Versus Request - @SessionAttributes
- Step 17 - Adding JSTL to Spring Boot Project and Showing Todos in a Table
- Step 18 - Adding Bootstrap CSS framework to Spring Boot Project Using webjars
- Step 19 - Formatting JSP Pages with Bootstrap CSS Framework
- Step 20 – Let's Add a New Todo - Create a New View
- Step 21 - Enhancing TodoService to Add the Todo
- Step 22 - Adding Validations Using Spring Boot Starter Validation
- Step 23 - Using Command Beans to Implement New Todo Page Validations
- Step 24 - Implementing Delete Todo Feature - New View
- Step 25 - Implementing Update Todo - 1 - Show Update Todo Page
- Step 26 - Implementing Update Todo - 1 - Save Changes to Todo
- Step 27 - Adding Target Date Field to Todo Page
- Step 28 - Adding a Navigation Bar and Implementing JSP Fragments
- Step 29 - Preparing for Spring Security
- Step 30 - Setting Up Spring Security with Spring Boot Starter Security
- Step 31 - Configuring Spring Security with Custom User and Password Encoder
- Step 32 - Refactoring and Removing Hardcoding of User ID
- Step 33 - Setting Up a New User for Todo Application
- Step 34 - Adding Spring Boot Starter Data JPA and Getting H2 Database-Ready
- Step 35 - 01 - Configuring Spring Security to Get H2 Console Working
- Step 35 - 02 - JDBC to Spring JDBC to JPA to Spring Data JPA – 10,000 Ft Overview
- Step 36 - Making Todo an Entity and Population Todo Data into H2
- Step 37 - Creating TodoRepository and Connecting List Todos Page from H2 Database
- Step 38 - 01 - Connecting All Todo App Features to H2 Database
- Step 38 - 02 - Exploring Magic of Spring Boot Starter JPA and JpaRepository
- Step 39 - Overview of Connecting Todo App to MySQL database
- Step 40 - Optional Hands-On - Installing Docker
- Step 41 - Optional Hands-On - Connecting Todo App to MySQL database
Introduction to JUnit in 5 Steps - V2
- Step 01 - What Is JUnit and Unit Testing?
- Step 02 - Your First JUnit Project and Green Bar
- Step 03 - Your First Code and First Unit Test
- Step 04 - Exploring Other Assert Methods
- Step 05 - Exploring Few Important JUnit Annotations
Introduction to Mockito in Five Steps - V2
- 02 Step 00 - Introduction to Section - Mockito in Five Steps
- 02 Step 01 - Setting Up a Spring Boot Project
- 02 Step 02 - Understanding Problems with Stubs
- 02 Step 03 - Writing Your First Mockito Test with Mocks
- 02 Step 04 - Simplifying Tests with Mockito Annotations - @Mock, @InjectMocks
- 02 Step 05 - Exploring Mocks Further by Mocking List Interface
Spring Boot Deep Dive with a REST API - V2
- Step 01 - Quick Introduction to REST - Understand Resource and Actions
- Step 02 - Creating Spring Boot Project for REST with Maven and Eclipse
- Step 03 - Creating Your First Spring Boot Resource - Hello World
- Step 04 - Creating a Second Spring Boot Resource Method - Hello World Bean
- Step 05 - Exploring Path Params and Path Variables with Spring Boot
- Step 06 - Getting Ready for Survey Questionnaire REST API
- Step 07 - Creating First Survey Spring Boot REST API - GET All Surveys
- Step 08 - Creating Second Survey Spring Boot REST API Method - GET a Survey
- Step 09 - Exploring REST API Best Practices - Request Methods and Response Status
- Step 10 - Exercise -Creating Survey Question-Related Spring Boot REST API Method
- Step 11 - Creating Spring Boot REST API to Create Survey Question - POST
- Step 12 - Improving POST Method - Status CREATED and Location Header
- Step 13 - Implementing Spring Boot REST API Method to DELETE a Question
- Step 14 - Implementing Spring Boot REST Method to Update a Question - PUT
- Step 15 - Setting Up Spring Boot Data JPA with H2 Database and User Entity
- Step 16 - Exploring Spring Boot Data JPA Using Command-Line Runner
- Step 17 - Creating User REST API with Spring Boot Starter Rest
- Step 18 - Writing Your First Spring Boot Integration Test
- Step 19 - Writing Asserts for JSON in Spring Boot Tests - JsonAssert
- Step 20 - Improving JUnit Asserts for Spring Boot Integration Test
- Step 21 - Writing Spring Boot Integration Test for GET Method Returning List
- Step 22 - Writing Spring Boot Integration Test for POST method Creating a Question
- Step 23 - Understanding JUnit Best Practice - Have Zero Side Effects
- Step 24 - Writing Your First Spring Boot Mock MVC Unit Test
- Step 25 - Improving Asserts for Spring Boot Mock MVC Unit Test
- Step 26 - Writing Spring Boot Mock MVC Unit Test for POST Method
- Step 27 - Getting Started with Spring Boot Starter Security
- Step 28 - Configuring Spring Security for Spring Boot REST API
- Step 29 - Fixing Spring Boot Unit and Integration Tests
Appendix - Introduction to Spring Framework
- Step 01 - Getting Started with Spring Framework - Goals
- Step 02 - Setting Up New Spring Project with Spring Initializr
- Step 03 - Iteration 1 - Building Tightly Coupled GameRunner and MarioGame
- Step 04 - Understanding Tight Coupling
- Step 05 - Iteration 2 - Loose Coupling Level 1 - Interfaces
- Step 06 - Exploring Loose Coupling with Interfaces - PacmanGame
- Step 07 - Iteration 3 - Loose Coupling Level 2 - Spring Framework
- Step 08 - Q1 - Spring Framework - Understanding What's Happening in the Background
- Step 09 - Q2 - Spring Framework - Understanding Important Terminology
- Step 10 - Q3 - Spring Framework - Does Spring Framework Add Value?
- Step 11 - Q4 - Spring Framework - Running Super Contra
- Step 12 - Q5 - Spring Framework - Maven
- Step 13 - Exploring Spring Framework Dependency Injection Types
- Step 14 - Exploring Spring Modules
- Step 15 - Exploring Spring Projects
- Step 16 - Getting Started with Spring Framework - Review
Appendix - Introduction to JPA with Spring Boot in 10 Steps
- Step 01 - Getting Started with JPA and Hibernate - Goals
- Step 02 - Setting Up New Spring Boot Project for JPA and Hibernate
- Step 03 - Launching Up H2 Console and Creating Course Table in H2
- Step 04 - Getting Started with Spring JDBC
- Step 05 - Inserting Hardcoded Data Using Spring JDBC
- Step 06 - Inserting and Deleting Data Using Spring JDBC
- Step 07 - Querying Data using Spring JDBC
- Step 08 - Getting Started with JPA and EntityManager
- Step 09 - Exploring the Magic of JPA
- Step 10 - Getting Started with Spring Data JPA
- Step 11 - Exploring Features of Spring Data JPA
- Step 12 - Understanding the Difference between Hibernate and JPA