This repository is meant to help you understand the fundamentals of the Spring framework.
With the evolution of Spring over the years, and the advent of Spring Boot I've noticed developers using the tool, but not understanding what it does underneath the hood. This resulted in them having a difficult time when it came to debugging issues.
This repo is has lessons to illustrate how the Spring framework works, but you'll have to know in which order to view the files. The layout is as follows:
We're using an example of using software to run and manage a hospital.
See the following interfaces.
Doctor.java
HospitalService.java
See the following classes, and the comments within them.
Surgeon.java
TightlyCoupledHospital.java
TightlyCoupledRunner.java
Main.java
See the following classes, and the comments within them.
Surgeon.java
DependencyInjectedHospital.java
DependencyInjectedHospitalSpec.groovy
DependencyInjectedRunner.java
Main.java
See the following classes, and the comments within them.
PrimaryCareProvider.java
SpringConfigHospital.java
ExplicitHospitalConfig.java
SpringConfigHospitalIntegrationSpec.groovy
SpringExplicitConfigRunner.java
Main.java
See the following classes, and the comments within them.
Pediatrician.java
SpringComponentHospital.java
ComponentScanHospitalConfig.java
SpringComponentHospitalIntegrationSpec.groovy
SpringImplicitConfigRunner.java
Main.java