Spring MVC handles HTTP requests through conversion, validation, controllers and response handling.
Learning roadmap
Read the contract, run the source-kit checks, and inspect a rejected input before extending the application. This subject covers Spring and Spring Boot together; Java language lessons remain in their own subject.
Prerequisites
Use Java object ownership, interfaces, exceptions and Maven builds before the framework-specific lessons.
Section lessons
- Spring MVC request validation: reject invalid commands before mutation
- Spring MVC ProblemDetail: stable errors without leaking internals
- Spring API pagination: bounded requests and immutable snapshots
- Spring MVC CORS: a browser-origin policy is not authentication
- Spring reactive foundations: request values and cancel a subscription
- Spring WebFlux SSE: emit bounded receipt events and test HTTP encoding
- Spring WebFlux cancellation: observe downstream cleanup without undoing work
- Spring MVC conditional GET: validate the representation tag
- Spring MVC consumes and produces: 415 and 406 are different failures
- Spring MVC nested validation: reject a bad line before the handler
- Spring If-Match writes: reject a stale receipt revision
- Spring POST idempotency keys: replay the same receipt result
- Spring retry and stale-write checks: choose the right HTTP contract
- Spring MVC validation paths: object constraints and method parameters
- Spring MVC validation errors: one public ProblemDetail for two failure paths
- Spring POST idempotency keys: bind replay to tenant and command
- Spring MVC multipart receipt import: validate before storing
- Spring multipart size limits: enforce parser and application budgets
- Spring CSV uploads: reject malformed UTF-8 and an unknown header
- Spring RestClient request factories: pin the transport you test
- Spring HTTP client timeouts: bound the call inside the request deadline
- Spring HTTP retries: only replay a command with a defined identity
- Spring RestClient transport: run the factory you configured
- Spring RestClient 503 response: count attempts before adding a retry
- Spring RestClient read timeout: reject a server that accepts but stalls
- Spring HTTP timeout after POST: the write may already exist
- Spring HTTP replay key: two requests, one modeled reservation
Continue learning
Boot Foundations, Spring Core, Data & Transactions, Security, Testing, Production, Exercises, Quizzes, Projects.
