Reja:
1. Bean Definition
2. Xml and java based configurations
3. Bean Scope(singleton, prototype, request, session, global-session)
4. Bean Life Cycle
5. Dependency Injection
6. Constructor and Setter Injection
7. Field Injection(@Autowired, @Qualifer, @Inject, @Named, @Lazy, @Resource)
Ilovaning asosini tashkil etuvchi va Spring IoC konteyneri tomonidan boshqariladigan
ob`ektlar bean deb ataladi . Bean - bu Spring IoC konteyneri tomonidan yaratilgan,
yig`ilgan va boshqa yo`l bilan boshqariladigan ob`ekt. Bu beanlar siz konteynerga
yetkazib beradigan konfiguratsiya metama`lumotlari bilan yaratilgan.
Bean ta`rifi konfiguratsiya metama`lumotlari deb ataladigan ma`lumotlarni o`z ichiga
oladi, bu konteyner quyidagilarni bilishi uchun zarur –
•
Qanday qilib bean yaratish kerak
•
Beanning life cycle tafsilotlari
•
Beanga bog`liqliklar
Bean Definition
Bean Definition
Ushbu rasmda qutilar geometrik raqamlardir. Spring ushbu ob`ektlarni dasturning ish
jarayoni davomida mavjud bo`lgan bitta nusxada yaratadi, ya`ni agar ob`ektni hohlagan
joyda foydalansak bizga o`sha ob`ektni kontekstdan (qutidan) nusxasini olamiz.
ApplicationContext context =
new
ClassPathXmlApplicationContext(
"context.xml"
);
Barcha bean konfiguratsiya qilingan va kontekstda (qutida) joylashtirilgandan so`ng, biz
ularni ehtiyojlarimizga qarab ishlatamiz.
Bean Definition
Yuqoridagi barcha konfiguratsiya metama`lumotlari har bir bean ta`rifini tashkil
etuvchi quyidagi xususiyatlar to`plamiga aylanadi.
№
Properties & Description
1
class
Bu atribut majburiydir va bean yaratish uchun foydalaniladigan bean classini belgilaydi.
2
name
Bu atribut bean identifikatorini yagona tarzda belgilaydi. XML-ga asoslangan konfiguratsiya metama`lumotlarida siz
bean identifikator(lar)ni belgilash uchun id va/yoki nom atributlaridan foydalanasiz.
3
scope
Bu atribut ma`lum bir bean ta`rifidan yaratilgan ob`ektlar doirasini belgilaydi.
4
constructor-arg
Bu bog`liqliklarni kiritish uchun ishlatiladi.
5
properties
Bu bog`liqliklarni kiritish uchun ishlatiladi.
6
autowiring mode
Bu bog`liqliklarni kiritish uchun ishlatiladi.
7
lazy-initialization mode
Lazy ishga tushirilgan bean IoC konteyneriga bean namunasini ishga tushirishda emas, balki birinchi so`ralganda
yaratishni aytadi.
8
initialization method
Qayta qo`ng`iroq beandagi barcha kerakli xususiyatlar konteyner tomonidan o`rnatilgandan so`ng chaqiriladi.
9
destruction method
Beanni o`z ichiga olgan konteyner yo`q qilinganda foydalaniladigan qayta qo`ng`iroq.
Spring Bean Spring IoC tomonidan boshqariladigan ob`ektlar bo`lib, ular ilovaning asosi
sifatida ham ishlaydi. Spring Containerga konfiguratsiya meta-ma`lumotlarini taqdim etadigan
uchta usul mavjud:
1. XML-ga asoslangan konfiguratsiya: konfiguratsiya XML fayli bean yaratish uchun ishlatiladi.
2. Izohga asoslangan konfiguratsiya: @Service, @Component, @Scope kabi izohlardan
foydalanish orqali.
3. Java asosidagi konfiguratsiya: @Configuration, @ComponentScan, @Bean yordamida.
Spring Bean Configurations
XML based configuration file
Projectda beanni aniqlash uchun
XML konfiguratsiyasidan foydalanamiz.
Buning uchun bizga uchta maven
dependency kerak:
spring-core: U Spring modullari bilan ishlash uchun zarur bo`lgan eng asosiy sinflarni o`z ichiga oladi.
spring-beans: U Spring beanlari uchun zarur bo`lgan org.springframework.beans.factory.BeanFactory
interfeysini taqdim etadi.
spring-context: U org.springframework.context.ApplicationContext interfeysini taqdim etadi, bu beanning
hayotiy sikli hodisalari tinglovchilari, AOP imkoniyatlari va boshqalar kabi qo`shimcha funksiyalar uchun zarur.
Dostları ilə paylaş: |