Spring Framework: вопросы на собеседовании
Вопросы и ответы по Spring Framework: подготовка, примеры и типичные ошибки.
Проверьте себя по Spring Framework: 5 вопросов, ~10 минут
Вопросов: 40. Частые идут первыми, сложные возвращаются на повторение.
- Что такое декларативное управление транзакциями в Spring и как работает
@Transactional?Senior· спрашивают почти всегда - Что такое Dependency Injection (DI)? Какие типы DI существуют в Spring?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое Inversion of Control (IoC) и как Spring его реализует?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое Spring Bean? Как IoC-контейнер Spring управляет бинами?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- В каких backend-проектах Spring Framework является сильным выбором, а где лучше выбрать более простой или другой стек?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое Spring Framework и какие проблемы он решает?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое Spring MVC? Объясните жизненный цикл запроса в DispatcherServlet.Middle· спрашивают почти всегда
- Каковы основные концепции Spring AOP: Aspect, Advice, Pointcut, Join Point и Weaving?Middle· полный разбор — Jobs/Boost
- Как работает аннотация
@Autowired? В чём разница между constructor, setter и field injection?Middle· полный разбор — Jobs/Boost - Каков жизненный цикл Spring Bean? Опишите его фазы.Senior· полный разбор — Jobs/Boost
- Что такое
BeanPostProcessorиBeanFactoryPostProcessorи чем они отличаются?Senior - Какие scopes бинов существуют в Spring? Объясните singleton, prototype, request и session.Middle· полный разбор — Jobs/Boost
- В чём разница между
@Beanи@Component?Middle· полный разбор — Jobs/Boost - В чём разница между
@Controllerи@RestController?Junior· полный разбор — Jobs/Boost - В чём разница между
JdbcTemplateSpring и Spring Data JPA?Middle - Что такое
@Qualifierи когда его использовать?Junior· полный разбор — Jobs/Boost - Что такое Spring AOP (Aspect-Oriented Programming)? Какую проблему он решает?Middle
- Как сравнить Spring Framework с ближайшими backend-альтернативами по скорости разработки, производительности, экосистеме и эксплуатации?Middle· полный разбор — Jobs/Boost
- Как понять, что проблема в сервисе связана с Spring Framework, а не с базой, сетью, инфраструктурой или бизнес-логикой?Senior
- Представьте, endpoint на Spring Framework иногда отвечает за секунды вместо миллисекунд. Как вы будете искать причину?Senior· полный разбор — Jobs/Boost
- Какие архитектурные решения Spring Framework задаёт вокруг request lifecycle, middleware, dependency model, validation и error handling?Middle
- Какие production-риски есть у Spring Framework: blocking code, connection pooling, config, auth, observability, deploy или graceful shutdown?Senior· полный разбор — Jobs/Boost
- Проект на Spring Framework вырос из MVP в большой production-сервис. Какие проблемы архитектуры и сопровождения вы ожидаете увидеть?Senior· полный разбор — Jobs/Boost
- Как Spring Security интегрируется со Spring Framework?Senior· полный разбор — Jobs/Boost
- Как Spring обрабатывает валидацию форм? Какую роль играют
@ValidиBindingResult?Middle· полный разбор — Jobs/Boost - Какие поведения propagation транзакций существуют в Spring?Senior
- В чём разница между
@Before,@After,@Around,@AfterReturningи@AfterThrowingadvice?Middle - Что такое процесс refresh ApplicationContext?Senior· полный разбор — Jobs/Boost
- Как Spring поддерживает асинхронное выполнение методов с помощью
@Asyncи@EnableAsync?Senior - В чём разница между
BeanFactoryиApplicationContext?Middle - Что такое аннотация
@Configurationи чем она отличается от@Component?Middle· полный разбор — Jobs/Boost - В чём разница между
@RequestMapping,@GetMapping,@PostMappingи другими аннотациями?Junior· полный разбор — Jobs/Boost - Что такое аннотация
@Scheduledи как настроить планировщик задач в Spring?Middle· полный разбор — Jobs/Boost - Что такое Spring Data и как он упрощает доступ к данным?Middle· полный разбор — Jobs/Boost
- Чем Bean scopes отличаются в web-приложениях и какие риски у request/session scope?Middle
- Расскажите о случае, когда вы проектировали или улучшали сервис на Spring Framework с учётом транзакций, безопасности, фоновых задач или мониторинга.Middle
- Почему
@Transactionalне срабатывает при self-invocation через метод того же класса?Middle· полный разбор — Jobs/Boost - Что такое
@ImportResourceи когда он может понадобиться?Middle· полный разбор — Jobs/Boost - Что такое Spring Expression Language (SpEL)?Middle
- Как Spring обрабатывает интернационализацию (i18n)?Middle· полный разбор — Jobs/Boost