← Java Internals explorer

Java vs Spring vs Boot

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.

JavaLanguage + JVM + standard library: classes, records, lambdas, streams, threads, JDBC, HttpClient.
Spring FrameworkProgramming model: IoC/DI, AOP, @Transactional, Spring MVC, WebFlux, events, RestClient.
Spring BootOpinionated setup: starters, auto-configuration, embedded server, externalized config, Actuator, fat jar.

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."

Each row: the same task done with plain Java, what Spring Framework adds, and what Spring Boot does for you.