What is Spring and Spring Boot?

1 minute read

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.

Updated: