What is Spring?
Think of Spring as an intelligent black box that is organized in a special way. It has compartments for you to place things in that it can detect and utilize. You are essentially breaking down your application into fundamental components that are plugged in at the right times and places for you by Spring. It is the orchestrator of your components that together make up your application.
The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform. A key element of Spring is infrastructural support at the application level: Spring focuses on the “plumbing” of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.
Read: Spring Framework Overview (spring.io)
Spring Boot
Spring Boot unleashes the power of Spring. It takes the concept of convention over configuration to the next level. Most applications tend to have the same technical requirements and only differ in business logic. Spring Boot greatly reduces the configuration of common things that we all need such as Servlets, Data Sources, Transactions, Validation, etc, and lets you get running quickly with sensible defaults. Spring Boot enables developers to rapidly deliver working software faster than ever before.
Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can “just run”. We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.