I'm starting my journey into Java engineering in a few weeks, and my company is using Spring as the framework of choice.
I'll do the switch from Typescript and Node.js, and have never worked with Java (outside of some Android dev).
So here is the thing: everyone talks about Spring, but it wasn't clear to me that, Spring and Spring Boot are related, but, are not the same thing. What I'm understanding is that Spring Boot is part of Spring, and kind of a de facto standard for Spring development. So the Spring term is, most of the times, not refereed to Spring Framework.
So, in short, Spring Boot is Spring with sane defaults and automation. It was created to reduce the huge amount of configuration work needed to start a Spring application.
A few features provided by Spring Boot:
- It is opinionated, they give you some standards to follow; but
- You can break the rules if you wish;
- Tries to auto-configure Spring and 3rd party libraries; and
- Gives you ways to explicitly configure things.
And, of course, many many more.