Middle
Mis on Spring Scope?
sobes.tech AI
Vastus AI-lt
Springis määrab Scope, mis defineerib beani elutsükli ja vaateala. See kontrollib, kui palju eksemplare beani kohta luuakse ja kuidas need kättesaadavad on.
Peamised Scope tüübid:
singleton: Üks eksemplar luuakse rakenduse kontekstis. See on vaikimisi Scope.prototype: Iga taotluse korral luuakse uus eksemplar.request: Iga HTTP taotluse kohta luuakse üks eksemplar. Kehtib ainult veebirakendustes.session: Iga HTTP sessiooni kohta luuakse üks eksemplar. Kehtib ainult veebirakendustes.application: KoguServletContextelutsükli jooksul luuakse üks eksemplar. Kehtib ainult veebirakendustes.
Näide bean deklaratsioonist koos määratud Scope'iga:
@Component
@Scope("prototype") // Määrame scope'iks prototype
public class MyPrototypeBean {
// ...
}
Või XML konfiguratsioonis:
<bean id="myPrototypeBeanAlgus" class="com.example.MyPrototypeBean" scope="prototype"/>
Õige Scope valik sõltub soovitud käitumisest ja olekust. Singleton sobib stateless beani jaoks, ja prototype — stateful või kui on vaja instantsi isolatsiooni. Request, session ja application kasutatakse veebikontekstides, et hallata beani elutsüklit vastavalt taotluste, sessioonide või kogu veebirakenduse jaoks.