Junior — Middle
Spring'da singleton va prototype qiymatlari bilan bo'lgan beanlar uchun doira ta'rifi nima anglatadi va bu ularning xulq-atvoriga qanday ta'sir qiladi?
sobes.tech AI
AIdan javob
Spring'da, bean'ning ko'rinish doirasi (scope) bean'ning hayot davomiyligi va ko'rinishini belgilaydi.
-
singleton — bu standart doira. Har safar bu scope bilan so'ralgan bean, Spring konteynerining butun hayot davomida bir xil nusxasini qaytaradi. Bu shuni anglatadiki, bean bir marta yaratiladi va takror ishlatiladi.
-
prototype — har so'rovda yangi nusxa yaratiladi. Spring bu bean'larning hayot aylanishini boshqarmaydi, shuning uchun har bir
getBeanchaqiruvi yangi ob'ektni qaytaradi.
Xulosa:
- Singleton bean'lar resurslarni tejaydi va barcha foydalanuvchilar uchun umumiy holatni ta'minlaydi.
- Prototype bean'lar har foydalanishda mustaqil holatga ega yangi nusxaga ehtiyoj bo'lsa, foydalidir.
Misol:
@Component
@Scope("prototype")
public class MyPrototypeBean {
// har `getBean` chaqiruvi yangi ob'ekt yaratadi
}
@Component
@Scope("singleton")
public class MySingletonBean {
// butun konteyner uchun bitta ob'ekt
}
Shunday qilib, scope tanlovi, ob'ektlar qanday va qachon yaratilishini va ular dasturda qancha davom yashashini ta'sir qiladi.