Back to study index

Learning roadmap

Spring Boot

Choose a goal, then follow each stage as an ordered, explained outline.

Learning goal

Learn deeply

Build a durable mental model, then transfer it into a working application.

Foundation

Stage purpose: Establish the vocabulary and first working mental model.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Explain the core idea and use it in a small example.

Estimated time: 140 minutes

  1. Lesson · Estimated time: 30 minutes

    Introduction to Spring Boot

    Outcomes
    • Explain what Spring Boot automates
    • Create a starter application

    Prerequisites: Java Http Rest

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: The Layer Map — Use explain what spring boot automates as the base, then name the main application layers in The Layer Map.

  2. Lesson · Estimated time: 25 minutes

    The Layer Map

    Outcomes
    • Name the main application layers
    • Place a concern in its layer

    Prerequisites: Java Interfaces

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: From an empty folder to a running endpoint — Use name the main application layers as the base, then run a spring boot app in From an empty folder to a running endpoint.

  3. Workshop · Estimated time: 35 minutes

    From an empty folder to a running endpoint

    Outcomes
    • Run a Spring Boot app
    • Build and call a REST endpoint

    Prerequisites: Introduction to Spring Boot

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: REST API Backend, Beneath the Hood — Use run a spring boot app as the base, then trace an http request in REST API Backend, Beneath the Hood.

  4. Lesson · Estimated time: 30 minutes

    REST API Backend, Beneath the Hood

    Outcomes
    • Trace an HTTP request
    • Test an endpoint with curl

    Prerequisites: Java Http Rest

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Foundation retrieval review — Use trace an http request as the base, then retrieve the foundation concepts without notes in Foundation retrieval review.

  5. Review · Estimated time: 20 minutes

    Foundation retrieval review

    Outcomes
    • Retrieve the foundation concepts without notes
    • Diagnose a broken first endpoint
    • Transfer the request-flow model to a new API

    Prerequisites: REST API Backend, Beneath the Hood

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Spring Core — IoC & Dependency Injection — Use retrieve the foundation concepts without notes as the base, then explain inversion of control in Spring Core — IoC & Dependency Injection.

Core concepts

Stage purpose: Connect the concepts into a repeatable problem-solving model.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Apply the model to a representative exercise without copying a recipe.

Estimated time: 360 minutes

  1. Lesson · Estimated time: 45 minutes

    Spring Core — IoC & Dependency Injection

    Outcomes
    • Explain inversion of control
    • Choose constructor injection

    Prerequisites: Java Interfaces, Java Object Composition

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Controller -> Service -> Repository, wired — Use explain inversion of control as the base, then wire controller service and repository in Controller -> Service -> Repository, wired.

  2. Workshop · Estimated time: 40 minutes

    Controller -> Service -> Repository, wired

    Outcomes
    • Wire controller service and repository
    • Apply constructor injection

    Prerequisites: Spring Core — IoC & Dependency Injection

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Spring Data JPA — From Object to Table — Use wire controller service and repository as the base, then map an entity in Spring Data JPA — From Object to Table.

  3. Workshop · Estimated time: 45 minutes

    Real data with JPA, H2 & Lombok

    Outcomes
    • Persist data with JPA
    • Inspect generated SQL

    Prerequisites: Spring Data JPA — From Object to Table

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: API Boundaries: DTOs, Validation & Errors — Use persist data with jpa as the base, then separate api and persistence shapes in API Boundaries: DTOs, Validation & Errors.

  4. Workshop · Estimated time: 35 minutes

    API Boundaries: DTOs, Validation & Errors

    Outcomes
    • Separate API and persistence shapes
    • Return useful validation errors

    Prerequisites: Controller -> Service -> Repository, wired

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Relationships & Transactions — Use separate api and persistence shapes as the base, then map entity relationships in Relationships & Transactions.

  5. Workshop · Estimated time: 40 minutes

    Relationships & Transactions

    Outcomes
    • Map entity relationships
    • Define a transaction boundary

    Prerequisites: Spring Data JPA — From Object to Table

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Spring Security — Basic Auth — Use map entity relationships as the base, then separate authentication from authorization in Spring Security — Basic Auth.

  6. Lesson · Estimated time: 40 minutes

    Spring Security — Basic Auth

    Outcomes
    • Separate authentication from authorization
    • Configure role-based access

    Prerequisites: REST API Backend, Beneath the Hood

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: JWT Authentication with Spring Security — Use separate authentication from authorization as the base, then explain jwt verification in JWT Authentication with Spring Security.

  7. Lesson · Estimated time: 45 minutes

    JWT Authentication with Spring Security

    Outcomes
    • Explain JWT verification
    • Wire a bearer-token filter

    Prerequisites: Spring Security — Basic Auth

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Core concepts retrieval review — Use explain jwt verification as the base, then explain a layered request path in Core concepts retrieval review.

  8. Review · Estimated time: 25 minutes

    Core concepts retrieval review

    Outcomes
    • Explain a layered request path
    • Predict persistence and transaction behavior
    • Defend an API boundary decision

    Prerequisites: JWT Authentication with Spring Security

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Test Doubles & Mockito — Use explain a layered request path as the base, then distinguish test doubles in Test Doubles & Mockito.

Applied skills

Stage purpose: Transfer the concepts into a realistic implementation task.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Produce a small artifact that proves the decision works.

Estimated time: 185 minutes

  1. Lesson · Estimated time: 35 minutes

    Test Doubles & Mockito

    Outcomes
    • Distinguish test doubles
    • Isolate a unit with Mockito

    Prerequisites: Spring Core — IoC & Dependency Injection

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Proving it works: Mockito & slice tests — Use distinguish test doubles as the base, then write a service test in Proving it works: Mockito & slice tests.

  2. Workshop · Estimated time: 40 minutes

    Proving it works: Mockito & slice tests

    Outcomes
    • Write a service test
    • Choose a Spring test slice

    Prerequisites: Test Doubles & Mockito

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: NoSQL, MongoDB & Spring Data — Use write a service test as the base, then compare document and relational models in NoSQL, MongoDB & Spring Data.

  3. Lesson · Estimated time: 35 minutes

    NoSQL, MongoDB & Spring Data

    Outcomes
    • Compare document and relational models
    • Use Spring Data MongoDB

    Prerequisites: Spring Data JPA — From Object to Table

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Logging in Spring Boot — Use compare document and relational models as the base, then configure useful application logs in Logging in Spring Boot.

  4. Lesson · Estimated time: 25 minutes

    Logging in Spring Boot

    Outcomes
    • Configure useful application logs
    • Explain Spring Boot observability tools

    Prerequisites: From an empty folder to a running endpoint

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Logging: SLF4J, Logback & Log4j — Use configure useful application logs as the base, then add structured logs in Logging: SLF4J, Logback & Log4j.

  5. Workshop · Estimated time: 25 minutes

    Logging: SLF4J, Logback & Log4j

    Outcomes
    • Add structured logs
    • Choose an appropriate log level

    Prerequisites: Logging in Spring Boot

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Applied skills retrieval review — Use add structured logs as the base, then choose a focused test strategy in Applied skills retrieval review.

  6. Review · Estimated time: 25 minutes

    Applied skills retrieval review

    Outcomes
    • Choose a focused test strategy
    • Use logs to narrow a failure
    • Plan a safe owner-scoped TaskFlow change

    Prerequisites: Logging: SLF4J, Logback & Log4j

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: From requirements to a blueprint — Use choose a focused test strategy as the base, then turn requirements into a design in From requirements to a blueprint.

Integration

Stage purpose: Combine the individual concepts in a deliberate exercise.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Explain the choices and verify the result end to end.

Estimated time: 170 minutes

  1. Workshop · Estimated time: 35 minutes

    From requirements to a blueprint

    Outcomes
    • Turn requirements into a design
    • Identify application boundaries

    Prerequisites: Controller -> Service -> Repository, wired

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Design in action: blueprint to working code — Use turn requirements into a design as the base, then implement a design incrementally in Design in action: blueprint to working code.

  2. Workshop · Estimated time: 45 minutes

    Design in action: blueprint to working code

    Outcomes
    • Implement a design incrementally
    • Use interfaces to isolate variation

    Prerequisites: From requirements to a blueprint

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Security: Spring Security & Basic Auth — Use implement a design incrementally as the base, then configure a security filter chain in Security: Spring Security & Basic Auth.

  3. Workshop · Estimated time: 45 minutes

    Security: Spring Security & Basic Auth

    Outcomes
    • Configure a security filter chain
    • Protect owner-scoped resources

    Prerequisites: Spring Security — Basic Auth

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Stateless auth with JWT — Use configure a security filter chain as the base, then issue a signed token in Stateless auth with JWT.

  4. Workshop · Estimated time: 45 minutes

    Stateless auth with JWT

    Outcomes
    • Issue a signed token
    • Verify a token in a request filter

    Prerequisites: Security: Spring Security & Basic Auth

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: TaskFlow Integration Sprint — Use issue a signed token as the base, then integrate spring boot skills in one application in TaskFlow Integration Sprint.

Capstone

Stage purpose: Transfer the path into an independent build.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Plan, implement, and review a project using the full path.

Estimated time: 150 minutes

  1. Workshop · Estimated time: 60 minutes

    TaskFlow Integration Sprint

    Outcomes
    • Integrate Spring Boot skills in one application
    • Diagnose layer-level issues

    Prerequisites: Design in action: blueprint to working code

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Build from scratch — Use integrate spring boot skills in one application as the base, then plan an independent spring boot build in Build from scratch.

  2. Project · Estimated time: 90 minutes

    Build from scratch

    Outcomes
    • Plan an independent Spring Boot build
    • Demonstrate transferable Spring skills

    Prerequisites: TaskFlow Integration Sprint

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Complete this path by applying these outcomes in your own project.