Sobes.tech
Back to questions
Junior — Middle
58

Какие области области видимости (scope) существуют в Spring Framework?

Companies where asked
Eclipse Digital

Answer from AI

sobes.tech AI

В Spring Framework существуют следующие основные области видимости (scope) для бинов:

  • singleton — по умолчанию. Один экземпляр бина создаётся на весь контейнер Spring.
  • prototype — каждый запрос к контейнеру создаёт новый экземпляр бина.
  • request — бин живёт в рамках одного HTTP-запроса (используется в веб-приложениях).
  • session — бин живёт в рамках HTTP-сессии пользователя.
  • application — бин живёт в рамках ServletContext, то есть на уровне всего веб-приложения.
  • websocket — бин живёт в рамках WebSocket-сессии.

Пример объявления с областью видимости:

@Component
@Scope("prototype")
public class MyBean {
    // ...
}

Области видимости позволяют управлять временем жизни и видимостью компонентов в приложении, что важно для правильного управления состоянием и ресурсами.