A complete learning path for Spring Boot — from your first application to production-grade microservices. Covers core IoC, REST APIs, JPA, security with JWT and OAuth2, reactive programming, testing, observability, GraalVM native images and Spring AI.
Overview of Spring Boot's value proposition, auto-configuration, starter dependencies and project structure for modern Java applications.
Read guide →Create, build and run your first Spring Boot app — project setup, main class, embedded Tomcat and your first REST endpoint.
Read guide →Layered architecture, auto-configuration internals, application context lifecycle and how the starter mechanism works end-to-end.
Read guide →How @EnableAutoConfiguration works, conditional beans, spring.factories and debugging auto-configuration decisions at startup.
Read guide →@SpringBootApplication, @RestController, @Service, @Repository, @Component and the full stereotype annotation hierarchy.
Read guide →Rapid prototyping with the CLI, Groovy scripts, project initialization and running apps without a full Maven or Gradle build.
Read guide →Inversion of Control, ApplicationContext, BeanFactory vs ApplicationContext and DI patterns: constructor, setter and field injection.
Read guide →Bean creation phases, @PostConstruct and @PreDestroy, BeanPostProcessor, InitializingBean and DisposableBean interfaces.
Read guide →Singleton, prototype, request, session and application scopes — when to use each and how scope mismatches cause subtle bugs.
Read guide →When to use @Bean in @Configuration, @Component stereotypes, and the difference between lite and full @Configuration mode.
Read guide →Resolving ambiguous bean injection with @Primary and @Qualifier, named beans and custom qualifier annotations.
Read guide →BeanPostProcessor and BeanFactoryPostProcessor hooks, custom post-processors for cross-cutting concerns and real-world use cases.
Read guide →JDK dynamic proxies vs CGLIB proxies, how @Transactional and @Cacheable work via proxies and self-invocation pitfalls.
Read guide →Aspect-Oriented Programming, @Aspect, @Before, @After, @Around advice, pointcut expressions and logging and metrics use cases.
Read guide →ApplicationEvent, @EventListener, async events with @Async, transactional events and decoupled components via the event bus.
Read guide →Deferring bean initialization with @Lazy, controlling creation order with @DependsOn and startup performance implications.
Read guide →Why circular dependencies occur, detection, @Lazy injection as a fix, constructor injection best practices and architectural solutions.
Read guide →@Component, @Service, @Repository, @Controller — semantic differences, component scanning and custom stereotype annotations.
Read guide →How Spring's reflection-based injection bypasses private fields, implications for immutability and why constructor injection is safer.
Read guide →@RestController, @RequestMapping, path variables, request bodies, ResponseEntity, error handling with @ControllerAdvice and DTOs.
Read guide →HTTP status code usage, @ResponseStatus, custom error responses, ProblemDetail (RFC 9457) and global exception handling.
Read guide →REST vs GraphQL vs gRPC vs WebSocket — choosing the right API style, Spring Boot support for each and trade-offs by use case.
Read guide →Project Reactor, Mono and Flux, reactive controllers, functional routing, R2DBC for reactive database access and backpressure.
Read guide →Entities, repositories, JPQL, Spring Data query methods, pagination, projections, lazy loading and N+1 query prevention.
Read guide →JdbcTemplate, NamedParameterJdbcTemplate, connection pooling with HikariCP, batch operations and when JDBC beats JPA.
Read guide →@Transactional propagation and isolation levels, programmatic transactions, read-only transactions and distributed patterns.
Read guide →@Cacheable, @CacheEvict, @CachePut, Redis integration, cache key strategies, TTL configuration and cache-aside pattern.
Read guide →Diagnosing "Unable to acquire JDBC Connection" — pool exhaustion, connection leaks, HikariCP tuning and health checks.
Read guide →Spring Security auto-configuration, SecurityFilterChain, in-memory users, form login, HTTP Basic and securing REST endpoints.
Read guide →Authorization server, resource server, Spring Security OAuth2 client, PKCE flow, scopes and token introspection.
Read guide →Social login with GitHub, Google and Facebook via Spring Security OAuth2 client and custom principal extraction.
Read guide →Method-level security with @PreAuthorize, CORS configuration, CSRF protection, rate limiting, audit logging and security testing.
Read guide →application.yml vs application.properties, @ConfigurationProperties, type-safe config binding, validation and config server.
Read guide →@Profile beans, profile-specific YAML files, activating profiles via env vars, default profiles and multi-environment patterns.
Read guide →Startup phases, ApplicationEvents, SmartLifecycle, graceful shutdown configuration and hook ordering at start and stop.
Read guide →mvn install:install-file for third-party JARs, local repository structure, POM-only dependencies and CI integration tips.
Read guide →@SpringBootTest, @WebMvcTest, @DataJpaTest, MockMvc, Testcontainers for integration tests, test slices and WireMock for HTTP stubs.
Read guide →@MockitoBean (Spring Boot 3.4+), @Mock vs @MockBean, mocking service dependencies, verify interactions and ArgumentCaptor.
Read guide →Spring AMQP with RabbitMQ, @KafkaListener, Spring Integration, event sourcing patterns and reliable messaging with dead-letter queues.
Read guide →Health endpoints, metrics with Micrometer, info endpoint, custom health indicators, securing actuator endpoints and Prometheus.
Read guide →Distributed tracing with Micrometer Tracing, Zipkin/Jaeger integration, structured logging with Logback and Grafana dashboards.
Read guide →Startup time reduction, lazy initialization, connection pool tuning, JVM flags, virtual threads (Java 21) and memory optimization.
Read guide →Diagnosing ApplicationContextException — port conflicts, missing servlet container dependency and embedded server configuration errors.
Read guide →Service discovery with Eureka, load balancing, circuit breakers with Resilience4j, API gateway patterns and distributed tracing.
Read guide →Containerizing Spring Boot apps, K8s Deployments, ConfigMaps, liveness/readiness probes, Helm charts and rolling updates.
Read guide →Ahead-of-time compilation, GraalVM native build tools, reflection hints, native testing and startup vs throughput trade-offs.
Read guide →Ahead-of-Time processing in Spring 6, how AOT differs from JIT compilation, generated source files and GraalVM compatibility.
Read guide →Head-to-head: startup time, memory footprint, native image support, ecosystem maturity and when to choose each framework.
Read guide →Java developer's guide to LLM integration: Spring AI ChatClient, RAG pattern, LangChain4j agents and which to choose.
Read guide →