Chapter 3. Creating Your First Spring Boot REST API

In this chapter, I explain and demonstrate how to develop a basic working application using Spring Boot. Since most applications involve exposing backend cloud resources to users, usually via a frontend UI, an Application Programming Interface (API) is an excellent starting point for both understanding and practicality. Let’s get started.

The Hows and Whys of APIs

The age of the monolithic application that does everything is over.

This isn’t to say that monoliths no longer exist or that they won’t still be created for ages to come. Under various circumstances, a monolithic application that provides numerous capabilities in one package still makes sense, especially in the following settings:

  • The domain and thus domain boundaries are largely unknown.

  • Provided capabilities are tightly coupled, and absolute performance of module interactions takes precedence over flexibility.

  • Scaling requirements for all related capabilities are known and consistent.

  • Functionality isn’t volatile; change is slow, limited in scope, or both.

For everything else, there are microservices.

This is a gross oversimplification, of course, but I believe it to be a useful summary. By splitting capabilities into smaller, cohesive “chunks,” we can decouple them, resulting in the potential for more flexible and robust systems that can be more rapidly deployed and more easily maintained.

In any distributed system—and make no mistake, a system comprising ...

Get Spring Boot: Up and Running now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.