Skip to content

Spring Boot

Spring Boot provides conventions and auto-configuration for creating Spring applications. It does not replace the Spring Framework: dependency injection, web handling, transactions, validation, and security retain their own contracts.

Learning objectives

  • design HTTP interfaces before selecting annotations;
  • separate transport, application, domain, and persistence concerns;
  • place validation and transaction boundaries deliberately;
  • distinguish authentication from authorization;
  • test at the smallest scope that answers the question; and
  • design observability, timeouts, and capacity as application behavior.
  1. HTTP and REST APIs
  2. Dependency injection and layers
  3. Patterns in Spring
  4. Configuration
  5. Validation and error handling
  6. Persistence and transactions
  7. Security fundamentals
  8. Testing
  9. Observability and resilience

The practical engineering techniques track develops the caching, retry, idempotency, pagination, DTO, persistence, observability, and testing techniques referenced throughout these pages.

Auto-configuration

Boot examines classpath dependencies, configuration, and existing beans to apply conditional defaults. Declaring an application bean can cause a default to back off. Treat the condition evaluation report and reference documentation as diagnostic tools rather than guessing what was configured.

Externalize environment-dependent values and bind related properties into validated @ConfigurationProperties objects. Never place real credentials in examples or commit them to source control.

Version-sensitive material

The conceptual contracts on these pages are kept independent of a specific release. Check the current Spring Boot reference before copying configuration or dependencies.