Start here. This is the direct spoken answer to practice first.
Overview
Spring selects a JSON message converter; Jackson then constructs and populates the declared body type before validation runs.
For an application/json request body, Spring MVC selects a Jackson-backed HttpMessageConverter when it supports the target type. Jackson parses the JSON and constructs the request DTO using its visible properties, constructors, records, and configured modules. If JSON is malformed or a value cannot become the declared Java type, conversion fails before the controller and before Bean Validation. Successful deserialization can still produce an object that later fails constraints.