Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Spring: bean, scope

Что такое scope бина в Spring?

Вопрос проверяет понимание жизненного цикла бинов и того, как Spring управляет их экземплярами.

Короткий ответ

Scope бина определяет, сколько экземпляров бина будет создано и как долго они будут существовать. По умолчанию используется singleton, при котором на весь контейнер создаётся один экземпляр. Также существуют prototype и web-scopes. Выбор scope влияет на потокобезопасность и поведение приложения. Неправильный выбор scope может привести к ошибкам.

Длинный ответ

Определение

Scope бина — это правило, которое определяет:

  • количество экземпляров бина

  • время их жизни

  • область видимости

Основные scope в Spring

Перед использованием важно понимать их назначение.

  1. singleton

  • один экземпляр на контейнер

  • используется по умолчанию

  • подходит для stateless-сервисов

  1. prototype

  • новый экземпляр при каждом запросе

  • Spring не управляет полным жизненным циклом

  • подходит для stateful-объектов

@Scope("prototype")
@Component
class Task {
}
  1. Web-scopes
    Используются в веб-приложениях:

  • request

  • session

  • application

Важный нюанс

Внедрение prototype бина в singleton:

  • не создаёт новый экземпляр каждый раз

  • требует дополнительных механизмов (ObjectProvider)

Вывод

Scope определяет жизненный цикл бина и напрямую влияет на архитектуру приложения. Выбор scope должен быть осознанным.

Уровень

  • Рейтинг:

    5

  • Сложность:

    4

Навыки

  • Spring

    Spring

Ключевые слова

#bean

#scope

Подпишись на Java Developer в телеграм