Технический ответ - использование механизма SpringMVC HandlerAdapter.
Посредством Spring DispatcherServlet для каждого отправленного запроса создается и настраивается адаптер обработчика.
Я думаю, что "магия весны" в этом случае - AnnotationMethodHandlerAdapter, расположенный в пакетах Spring mvc. Этот адаптер в основном будет «сопоставлен» с HTTP-запросом на основе HTTP-путей, HTTP-методов и параметров запроса, связанных с запросом.
Так важно, когда сервлет весеннего диспетчера идентифицирует запрос с путем "/", он проверяет методы в своем контейнере, помеченном аннотацией RequestMapping.
В твоем случае это всё ...
Тогда начинается настоящее волшебство ...
Используя java отражение, Spring затем разрешит аргументы вашего метода контроллера. Таким образом, в вашем случае локаль и модель будут автоматически переданы вам. Если вы включили другой веб-подобный параметр, такой как HttpSession, он будет передан вам.