Sobes.tech
Junior — Middle

Какви са разликите между различните типове Scope при биновете в Spring?

sobes.tech AI

Отговор от AI

В Spring съществуват различни типове scope (обхвати) на бинове, които определят жизнения цикъл и обхвата на видимост на екземплярите:

  • singleton (по подразбиране): един екземпляр на бина се създава за целия контейнер Spring. Всички заявки към този бин получават един и същи обект.
  • prototype: при всяка заявка се създава нов екземпляр на бина.
  • request: бинът живее в рамките на един HTTP заявка (за уеб приложения).
  • session: бинът живее в рамките на HTTP сесията на потребителя.
  • application: бинът живее в рамките на ServletContext (уеб приложение).
  • websocket: бинът живее в рамките на WebSocket сесия.

Изборът на scope зависи от това колко дълго трябва да съществува обектът и в какъв контекст се използва.