Spring
Why Spring
Overview Microservices Reactive Event Driven Cloud Web Applications Serverless Batch
Learn
Overview Quickstart Guides Blog
Projects
Overview Spring Boot Spring Framework Spring Cloud Spring Cloud Data Flow Spring Data Spring Integration Spring Batch Spring Security View all projects
  • DEVELOPMENT TOOLS
  • Spring Tools 4 Spring Initializr
    Academy
    Courses Get Certified
    Solutions
    Overview Spring Runtime Spring Consulting Spring Academy For Teams Security Advisories
    Community
    Overview Events Team
    Spring Boot 3.3.12-SNAPSHOT
      • Overview
      • Documentation
      • Community
      • System Requirements
      • Installing Spring Boot
      • Upgrading Spring Boot
      • Tutorials
        • Developing Your First Spring Boot Application
      • Reference
        • Developing with Spring Boot
          • Build Systems
          • Structuring Your Code
          • Configuration Classes
          • Auto-configuration
          • Spring Beans and Dependency Injection
          • Using the @SpringBootApplication Annotation
          • Running Your Application
          • Developer Tools
          • Packaging Your Application for Production
        • Core Features
          • SpringApplication
          • Externalized Configuration
          • Profiles
          • Logging
          • Internationalization
          • Aspect-Oriented Programming
          • JSON
          • Task Execution and Scheduling
          • Development-time Services
          • Creating Your Own Auto-configuration
          • Kotlin Support
          • SSL
        • Web
          • Servlet Web Applications
          • Reactive Web Applications
          • Graceful Shutdown
          • Spring Security
          • Spring Session
          • Spring for GraphQL
          • Spring HATEOAS
        • Data
          • SQL Databases
          • Working with NoSQL Technologies
        • IO
          • Caching
          • Hazelcast
          • Quartz Scheduler
          • Sending Email
          • Validation
          • Calling REST Services
          • Web Services
          • Distributed Transactions With JTA
        • Messaging
          • JMS
          • AMQP
          • Apache Kafka Support
          • Apache Pulsar Support
          • RSocket
          • Spring Integration
          • WebSockets
        • Testing
          • Test Scope Dependencies
          • Testing Spring Applications
          • Testing Spring Boot Applications
          • Testcontainers
          • Test Utilities
        • Packaging Spring Boot Applications
          • Efficient Deployments
          • Class Data Sharing
          • Ahead-of-Time Processing With the JVM
          • GraalVM Native Images
            • Introducing GraalVM Native Images
            • Advanced Native Images Topics
          • Checkpoint and Restore With the JVM
          • Container Images
            • Efficient Container Images
            • Dockerfiles
            • Cloud Native Buildpacks
        • Production-ready Features
          • Enabling Production-ready Features
          • Endpoints
          • Monitoring and Management Over HTTP
          • Monitoring and Management over JMX
          • Observability
          • Loggers
          • Metrics
          • Tracing
          • Auditing
          • Recording HTTP Exchanges
          • Process Monitoring
          • Cloud Foundry Support
      • How-to Guides
        • Spring Boot Application
        • Properties and Configuration
        • Embedded Web Servers
        • Spring MVC
        • Jersey
        • HTTP Clients
        • Logging
        • Data Access
        • Database Initialization
        • NoSQL
        • Messaging
        • Batch Applications
        • Actuator
        • Security
        • Hot Swapping
        • Testing
        • Build
        • Ahead-of-Time Processing
        • GraalVM Native Applications
          • Developing Your First GraalVM Native Application
          • Testing GraalVM Native Images
        • Class Data Sharing
        • Deploying Spring Boot Applications
          • Traditional Deployment
          • Deploying to the Cloud
          • Installing Spring Boot Applications
        • Docker Compose
      • Build Tool Plugins
        • Maven Plugin
          • Getting Started
          • Using the Plugin
          • Goals
          • Packaging Executable Archives
          • Packaging OCI Images
          • Running your Application with Maven
          • Ahead-of-Time Processing
          • Running Integration Tests
          • Integrating with Actuator
          • Help Information
        • Gradle Plugin
          • Getting Started
          • Managing Dependencies
          • Packaging Executable Archives
          • Packaging OCI Images
          • Publishing your Application
          • Running your Application with Gradle
          • Ahead-of-Time Processing
          • Integrating with Actuator
          • Reacting to Other Plugins
        • Spring Boot AntLib Module
        • Supporting Other Build Systems
      • Spring Boot CLI
        • Installing the CLI
        • Using the CLI
      • Rest APIs
        • Actuator
          • Audit Events (auditevents)
          • Beans (beans)
          • Caches (caches)
          • Conditions Evaluation Report (conditions)
          • Configuration Properties (configprops)
          • Environment (env)
          • Flyway (flyway)
          • Health (health)
          • Heap Dump (heapdump)
          • HTTP Exchanges (httpexchanges)
          • Info (info)
          • Spring Integration Graph (integrationgraph)
          • Liquibase (liquibase)
          • Log File (logfile)
          • Loggers (loggers)
          • Mappings (mappings)
          • Metrics (metrics)
          • Prometheus (prometheus)
          • Quartz (quartz)
          • Software Bill of Materials (sbom)
          • Scheduled Tasks (scheduledtasks)
          • Sessions (sessions)
          • Shutdown (shutdown)
          • Application Startup (startup)
          • Thread Dump (threaddump)
      • Java APIs
        • Spring Boot
        • Gradle Plugin
        • Maven Plugin
      • Kotlin APIs
        • Spring Boot
      • Specifications
        • Configuration Metadata
          • Metadata Format
          • Providing Manual Hints
          • Generating Your Own Metadata by Using the Annotation Processor
        • The Executable Jar Format
          • Nested JARs
          • Spring Boot’s “NestedJarFile” Class
          • Launching Executable Jars
          • PropertiesLauncher Features
          • Executable Jar Restrictions
          • Alternative Single Jar Solutions
      • Appendix
        • Common Application Properties
        • Auto-configuration Classes
          • spring-boot-autoconfigure
          • spring-boot-actuator-autoconfigure
        • Test Auto-configuration Annotations
          • Test Slices
        • Dependency Versions
          • Managed Dependency Coordinates
          • Version Properties
    Edit this Page GitHub Project Stack Overflow
    • Spring Boot
    • Tutorials

    This version is still in development and is not considered stable yet. For the latest stable version, please use Spring Boot 3.4.5!

    Tutorials

    This section provides tutorials to help you get started using Spring Boot.

    Upgrading Spring Boot Developing Your First Spring Boot Application
    • Spring Boot
      • 3.4.5
      • 3.3.11
      • 3.5.0-M3
      • 4.0.0-SNAPSHOT
      • 3.5.0-SNAPSHOT
      • 3.4.6-SNAPSHOT
      • 3.3.12-SNAPSHOT
    • Related Spring Documentation
      • Spring Boot
      • Spring Framework
      • Spring Cloud
        • Spring Cloud Build
        • Spring Cloud Bus
        • Spring Cloud Circuit Breaker
        • Spring Cloud Commons
        • Spring Cloud Config
        • Spring Cloud Consul
        • Spring Cloud Contract
        • Spring Cloud Function
        • Spring Cloud Gateway
        • Spring Cloud Kubernetes
        • Spring Cloud Netflix
        • Spring Cloud OpenFeign
        • Spring Cloud Stream
        • Spring Cloud Task
        • Spring Cloud Vault
        • Spring Cloud Zookeeper
      • Spring Data
        • Spring Data Cassandra
        • Spring Data Commons
        • Spring Data Couchbase
        • Spring Data Elasticsearch
        • Spring Data JPA
        • Spring Data KeyValue
        • Spring Data LDAP
        • Spring Data MongoDB
        • Spring Data Neo4j
        • Spring Data Redis
        • Spring Data JDBC & R2DBC
        • Spring Data REST
      • Spring Integration
      • Spring Batch
      • Spring Security
        • Spring Authorization Server
        • Spring LDAP
        • Spring Security Kerberos
        • Spring Session
        • Spring Vault
      • Spring AI
      • Spring AMQP
      • Spring CLI
      • Spring GraphQL
      • Spring for Apache Kafka
      • Spring Modulith
      • Spring for Apache Pulsar
      • Spring Shell
    • All Docs...
    Spring

    Copyright © 2005 - Broadcom. All Rights Reserved. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
    Terms of Use • Privacy • Trademark Guidelines • Thank you • Your California Privacy Rights • Cookie Settings

    Apache®, Apache Tomcat®, Apache Kafka®, Apache Cassandra™, and Apache Geode™ are trademarks or registered trademarks of the Apache Software Foundation in the United States and/or other countries. Java™, Java™ SE, Java™ EE, and OpenJDK™ are trademarks of Oracle and/or its affiliates. Kubernetes® is a registered trademark of the Linux Foundation in the United States and other countries. Linux® is the registered trademark of Linus Torvalds in the United States and other countries. Windows® and Microsoft® Azure are registered trademarks of Microsoft Corporation. “AWS” and “Amazon Web Services” are trademarks or registered trademarks of Amazon.com Inc. or its affiliates. All other trademarks and copyrights are property of their respective owners and are only mentioned for informative purposes. Other names may be trademarks of their respective owners.

    Search in all Spring Docs