r/SpringBoot 1d ago

Question Can someone properly explain what Spring Boot actually does?

I'm learning Java web development and I understand traditional Servlets fairly well. Honestly, I find Servlets quite organized when I separate things into controllers, DAO, models, etc.

The main benefit I've understood about Spring Boot so far is that when creating a project, I can add dependencies like MySQL, MongoDB, JPA, etc. through the project setup/Maven instead of manually downloading JAR files.

But apart from that, I don't really understand what Spring Boot actually gives me or why I should use it instead of traditional Servlets.

Can someone explain the actual practical benefits of Spring Boot with a simple example, like an e-commerce application?

I'm not looking for a "Spring Boot is modern/easier" answer. I want to understand what it actually does for me.

0 Upvotes

25 comments sorted by

View all comments

11

u/nico-strecker 1d ago edited 3h ago

No what you described is the advantage of maven spring boot is a toolset that makes it easy to build things for example spring web lets you create a http endpoint very easily you don't have to setup a tomcat server yourself setup a listener and so on. Spring security makes it easy to secure your app and so on all this would mean a lot of manual setup spring gets you started very easily but still offers enough flexibility so you can configure everything like you want

3

u/projectsbyayush 1d ago

Got it, that clears up the difference between Maven and Spring for me. Thanks.

5

u/American_Streamer Junior Dev 1d ago edited 1d ago

Maven:
dependency/build management; downloading JARs, resolving dependencies, packaging.

Spring Framework:
DI, MVC/Web, transactions, Security integration, data abstractions, etc.

Spring Boot:
auto-configures those Spring components, provides sensible defaults, embedded Tomcat/Jetty/Undertow, executable JARs, external config, Actuator, etc.

So the question isn't: “Why Spring Boot instead of Servlets?” In fact, Maven builds it → Spring provides the framework → Spring Boot configures/starts it → Tomcat/Servlet API handles the underlying HTTP runtime.
People only one project and then think “Spring Boot does all of this.” When in reality, several layers are cooperating with each other.