Sobes.tech
Middle

Spring Scope деген эмне?

sobes.tech AI

AIден жооп

Springде Scope, бир биндин жашоо цикли жана көрүнүш чөйрөсүн аныктайт. Ал канча нуска түзүлөрүн жана аларга кандай жетүү болорун көзөмөлдөйт.

Негизги Scope түрлөрү:

  • singleton: Тиркеменин контекстинде бир нуска түзүлөт. Бул стандарттуу Scope.
  • prototype: Ар бир суроо боюнча жаңы нуска түзүлөт.
  • request: HTTP суроо боюнча бир нуска түзүлөт. Жайылуу веб тиркемелер үчүн гана.
  • session: HTTP сессиясы боюнча бир нуска түзүлөт. Жайылуу веб тиркемелер үчүн гана.
  • application: ServletContext бүт өмүр бою бир нуска түзүлөт. Жайылуу веб тиркемелер үчүн гана.

Мисал:

@Component
@Scope("prototype") // Prototype scope көрсөтүү
public class MyPrototypeBean {
    // ...
}

Же XML конфигурациясында:

<bean id="myPrototypeBeanБаштоо" class="com.example.MyPrototypeBean" scope="prototype"/>

Туура Scope тандоо, талап кылынган жүрүм-турум жана абалга жараша болот. Singleton, статeless биндер үчүн ылайыктуу, ал эми prototype — stateful же изоляцияны талап кылган учурларда. Request, session жана application веб контексттерде колдонулат, биндин жашоо циклин башкаруу үчүн, суроолорго, сессияларга же бүт веб тиркемеге ылайык.