Spring Boot Reference Documentation

This document is also available as a single HTML page and as a PDF.

The reference documentation consists of the following sections:

Legal

Legal information.

Getting Help

Resources for getting help.

Documentation Overview

About the Documentation, First Steps, and more.

Getting Started

Introducing Spring Boot, System Requirements, Servlet Containers, Installing Spring Boot, and Developing Your First Spring Boot Application

Upgrading Spring Boot Applications

Upgrading from 1.x, Upgrading to a new feature release, and Upgrading the Spring Boot CLI.

Using Spring Boot

Build Systems, Structuring Your Code, Configuration, Spring Beans and Dependency Injection, DevTools, and more.

Core Features

Profiles, Logging, Internationalization, Task Execution and Scheduling, Testing, and more.

Web

Servlet Web, Reactive Web, Embedded Container Support, Graceful Shutdown, and more.

Data

SQL and NOSQL data access.

IO

Caching, Quartz Scheduler, REST clients, Sending email, Spring Web Services, and more.

Messaging

JMS, AMQP, Apache Kafka, Apache Pulsar, RSocket, WebSocket, and Spring Integration.

Container Images

Efficient container images and Building container images with Dockerfiles and Cloud Native Buildpacks.

Production-ready Features

Monitoring, Metrics, Auditing, and more.

Deploying Spring Boot Applications

Deploying to the Cloud, and Installing as a Unix application.

GraalVM Native Image Support

Create a native executable from your application using GraalVM

Spring Boot CLI

Installing the CLI, Using the CLI, Configuring the CLI, and more.

Build Tool Plugins

Maven Plugin, Gradle Plugin, Antlib, and more.

“How-to” Guides

Application Development, Configuration, Embedded Servers, Data Access, and many more.

The reference documentation has the following appendices:

Application Properties

Common application properties that you can use to configure your application.

Configuration Metadata

Metadata that you can use to describe configuration properties.

Auto-configuration Classes

Auto-configuration classes provided by Spring Boot.

Test Auto-configuration Annotations

Test auto-configuration annotations that you can use to test slices of your application.

Executable Jars

Spring Boot’s executable jars, their launchers, and their format.

Dependency Versions

Details of the dependencies that are managed by Spring Boot.