Three layers, three jobs. Java gives the language and the JVM. Spring Framework gives the programming model. Spring Boot sets it all up and runs it. For every common task, see what each layer adds.
Interview one-liner: "Java is the language and runtime. Spring Framework is how I structure the app — dependency injection, AOP, transactions, MVC. Spring Boot removes the setup: starters, auto-configuration, an embedded server and production features, so I run it with java -jar."
Every release, one line each. Tap a dot or a row. Orange ring = where SecurePay is today (Java 17, Spring Framework 6.2, Boot 3.5.5).
| Spring Boot | Spring Framework | Minimum Java | Namespace | Key change |
|---|---|---|---|---|
| 1.5 (2017) | 4.3 | 7 (8 recommended) | javax.* | Auto-config + starters matured, Actuator 1 |
| 2.0 – 2.7 (2018–2022) | 5.0 – 5.3 | 8 | javax.* | WebFlux, Micrometer metrics, Actuator 2, config data import (2.4) |
| 3.0 – 3.5 (2022–2025) · SecurePay 3.5.5 | 6.0 – 6.2 | 17 | jakarta.* | Java 17 + Jakarta, native images, Observation/tracing, virtual threads (3.2) |
| 4.0 (Nov 2025) | 7.0 | 17 (25 supported) | jakarta.* (EE 11) | Jackson 3, JSpecify null-safety, API versioning, modular auto-config jars |