What is Spring and Spring Boot?
If you’ve learned Core Java and want to build web applications, REST APIs, or microservices, your next step is Spring Boot. It’s the most popular Java framework in the world, used by Netflix, Amazon, Google, and thousands of companies of every size.
In this chapter, you’ll learn what Spring and Spring Boot are, why they exist, and what you can build with them.
The Problem Spring Solves
Building a Java web application from scratch requires:
- A web server (Tomcat, Jetty)
- Database connection pooling
- Security (authentication, authorization)
- Configuration management
- Dependency injection
- Transaction management
- … and hundreds of lines of XML configuration
The Spring Framework (2003) simplified all of this with Inversion of Control (IoC) and Dependency Injection (DI) — but still required significant XML configuration.
Spring Boot (2014) took it further: convention over configuration. It auto-configures everything based on what’s on your classpath, embeds the web server, and gets you from zero to running API in under 5 minutes.
Spring vs Spring Boot vs Spring MVC
| Spring Framework | Spring MVC | Spring Boot | |
|---|---|---|---|
| What | IoC container + enterprise features | Web MVC framework (part of Spring) | Opinionated auto-configuration layer |
| Config | Manual (XML or Java) | Manual | Auto-configured |
| Server | External (deploy WAR to Tomcat) | External | Embedded (runs as JAR) |
| Year | 2003 | 2003 | 2014 |
Spring Boot = Spring Framework + Auto-configuration + Embedded Server + Opinionated Defaults
What Can You Build with Spring Boot?
- REST APIs — the most common use case
- Microservices — with Spring Cloud
- Web applications — with Thymeleaf or React/Angular frontend
- Batch processing — with Spring Batch
- Event-driven systems — with Spring Cloud Stream + Kafka/RabbitMQ
- AI applications — with Spring AI
- Scheduled jobs — with
@Scheduled
Spring Boot by the Numbers
- #1 Java framework worldwide
- 40+ million downloads per month
- 70%+ of Java web applications use Spring
- Default choice for enterprise Java development
What’s Next?
In the next chapter, you’ll create your first Spring Boot project using Spring Initializr and run it in under 5 minutes.