Course

Spring Framework

Core Spring for dependency injection, application architecture, MVC, validation, AOP, transactions, data access, and tests.

Start course

intermediate to advanced / 26 lessons

Log in to track your progress through this course.

About this course

Who it is for

This course is for Java developers who want to understand how Spring works underneath Spring Boot. It assumes you are comfortable with core Java and object-oriented programming; knowing a little about web applications helps but is not required.

What it covers

The first module is a practical setup guide: installing the JDK, Maven or Gradle and an IDE on Windows, macOS or Linux, creating a project with Spring Initializr, and running and packaging your first Spring and Spring Boot applications. The core of the course is the Spring container: inversion of control, dependency injection, beans and their scopes, the application context, component scanning and Java configuration. Later modules cover the bean lifecycle, profiles, events and resources, then Spring MVC, validation, exception handling and aspect-oriented programming, and finally Spring Data, transactions, testing and an overview of reactive programming. Examples target Spring Framework 7.

How to use it

Work through the setup module first so every later example runs on your machine. Once the container concepts are clear, the Spring Boot course shows how Boot configures the same pieces for you automatically.