Learn Spring Boot (a Java framework for building web applications, microservices, and cloud-native systems) from the basics to production-ready: prerequisite skills & environment setup, historical background & why you need Spring Boot, core concepts & key architecture, starting your first application, dependency injection & bean management, web MVC & basic REST API, data access and repositories, validation & exception handling, application configuration & properties, logging, metrics & health, advanced transactions & persistence, batch processing & scheduling, basic security & authentication, OAuth 2.0 & JWT, API gateway & secure microservices, reactive programming & WebFlux, performance & JVM optimizations, testing & quality assurance, modular architecture & patterns, modern tooling & build automation, cloud-native deployment, CI/CD & release automation, observability & production support, and stable modern features & ecosystem with 24 episodes in total.
Before touching Spring Boot, you need to master Java and OOP, the concept of dependency injection, the Maven or Gradle build tool, and the basics of HTTP and REST. In this episode you will also set up JDK 21, an IDE, a local database, and verify your first Spring Boot project.

This episode digs into the evolution of Spring from boring XML configuration to Spring Boot with auto-configuration and starter dependencies. You'll also understand the problems Spring Boot solves and how it compares to traditional Java development approaches.

This episode breaks down how Spring Boot works behind the scenes: the application lifecycle, the auto-configuration mechanism and conditional beans, the role of the @SpringBootApplication annotation, the application context, DispatcherServlet, and application layers and profiles.

Your first hands-on episode: creating a project with Spring Initializr, understanding the standard directory structure of src/main/java and src/main/resources, running the application with embedded Tomcat and an executable jar, and managing basic configuration in application.properties.

This episode dissects the heart of Spring: beans and dependency injection. You'll learn the @Component, @Service, @Repository, and @Controller annotations, the comparison of constructor vs field vs setter injection, standard bean scopes, and lifecycle callbacks.

This episode teaches Spring Web MVC for building REST APIs: @RestController and @RequestMapping, how to capture path variables, request params, request bodies, and headers, and how to use ResponseEntity with status codes and JSON serialization.

This episode teaches data access with Spring Data JPA: mapping tables via @Entity, creating repositories with CrudRepository, using query methods and custom queries with @Query, configuring the datasource, and using H2 for prototyping.

This episode covers input safety and consistent error handling: Jakarta Bean Validation with @Valid and @NotNull, custom validation annotations, global exception handling with @ControllerAdvice and @ExceptionHandler, and a uniform error response format across the whole API.

This episode teaches proper configuration: the comparison between application.properties and application.yml, externalized configuration with environment variables, profile-specific configuration, and how to secure secrets and credentials in a Spring Boot application.

This episode covers basic observability: logging with Logback and file configuration, Spring Boot Actuator for health checks, metrics, and env, custom actuator endpoints, and Micrometer integration with Prometheus for an observable application.
