Вопрос проверяет понимание Dependency Injection и принципов проектирования надёжных компонентов.
Короткий ответ
Constructor injection гарантирует, что объект создаётся сразу в корректном состоянии. Все зависимости обязательны и не могут быть забыты. Такой подход упрощает тестирование и делает объект неизменяемым. Он также позволяет раньше выявлять ошибки конфигурации. Поэтому Spring рекомендует именно этот способ.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.