This section provides a brief overview of Spring Boot reference documentation. It serves as a map for the rest of the document.
The latest copy of this document is available at docs.spring.io/spring-boot/docs/current/reference/.
1. First Steps
If you are getting started with Spring Boot or 'Spring' in general, start with the following topics:
-
From scratch: Overview | Requirements | Installation
2. Upgrading From an Earlier Version
You should always ensure that you are running a supported version of Spring Boot.
Depending on the version that you are upgrading to, you can find some additional tips here:
-
From 1.x: Upgrading from 1.x
-
To a new feature release: Upgrading to New Feature Release
-
Spring Boot CLI: Upgrading the Spring Boot CLI
3. Developing with Spring Boot
Ready to actually start using Spring Boot? We have you covered:
-
Best practices: Code Structure | @Configuration | @EnableAutoConfiguration | Beans and Dependency Injection
-
Packaging your app: Production jars
-
Spring Boot CLI: Using the CLI
4. Learning About Spring Boot Features
Need more details about Spring Boot’s core features? The following content is for you:
-
Spring Application: SpringApplication
-
External Configuration: External Configuration
-
Profiles: Profiles
-
Logging: Logging
5. Web
If you develop Spring Boot web applications, take a look at the following content:
-
Servlet Web Applications: Spring MVC, Jersey, Embedded Servlet Containers
-
Reactive Web Applications: Spring Webflux, Embedded Servlet Containers
-
Graceful Shutdown: Graceful Shutdown
-
Spring Security: Default Security Configuration, Auto-configuration for OAuth2, SAML
-
Spring Session: Auto-configuration for Spring Session
-
Spring HATEOAS: Auto-configuration for Spring HATEOAS
7. Messaging
If your application uses any messaging protocol, see one or more of the following sections:
8. IO
If your application needs IO capabilities, see one or more of the following sections:
-
Caching: Caching support EhCache, Hazelcast, Infinispan and more
-
Quartz: Quartz Scheduling
-
Mail: Sending Email
-
Validation: JSR-303 Validation
-
REST Clients: Calling REST Services with RestTemplate and WebClient
-
Webservices: Auto-configuration for Spring Web Services
9. Container Images
Spring Boot provides first-class support for building efficient container images. You can read more about it here:
-
Efficient Container Images: Tips to optimize container images such as Docker images
-
Dockerfiles: Building container images using dockerfiles
-
Cloud Native Buildpacks: Support for Cloud Native Buildpacks with Maven and Gradle
10. Advanced Topics
Finally, we have a few topics for more advanced users:
-
Spring Boot Applications Deployment: Cloud Deployment | OS Service
-
Appendix: Application Properties | Configuration Metadata | Auto-configuration Classes | Test Auto-configuration Annotations | Executable Jars | Dependency Versions