Reja: spring-mvc




Download 3,06 Mb.
Pdf ko'rish
bet2/2
Sana14.05.2024
Hajmi3,06 Mb.
#232860
1   2
Bog'liq
6-7-Spring MVC and Spring MVC annotation

Xml configuration
Java-based configuration
Description

@ComponentScan()
Tekshirish bazaviy paketdan boshlanadi va
barcha kontrollerlarni, repository, service, 
bean va boshqalarni qayd qiladi

@EnableWebMvc
Spring MVC ni yoqish uchun annotatsiya
Spring config file
@Configuration
Spring MVC ilovalari uchun konfiguratsiya
fayli sifatida muomala qilishini ta`minlaydi.


Spring MVC annotations
@Controller
Springda
@Controller
annotatsiyasi
ham
@Component
annotatsiyasining
ixtisoslashuvidir . @Controller izohi ma`lum bir class boshqaruvchisi rolini
bajarishini bildiradi. Spring Controller izohi odatda @RequestMapping izohiga
asoslangan izohli ishlov berish methodlari bilan birgalikda ishlatiladi. U faqat
classlarga qo`llanilishi mumkin. U classni web-so`rovni ishlov beruvchi sifatida
belgilash uchun ishlatiladi. U asosan
Spring MVC
ilovalarida ishlatiladi. Ushbu izoh
izohlangan class uchun stereotip bo`lib, uning rolini ko`rsatadi. Dispatcher
xaritalangan
methodlar
uchun
bunday
izohli
classlarni
skanerlaydi
va @RequestMapping izohlarini aniqlaydi.


@Controller


@RequestMapping
Biz ushbu izohdan Spring MVC Controllerda veb-so`rov methodlarini xaritalash uchun 
foydalanamiz . Biz uni mavjud atributlari yordamida ham sozlashimiz mumkin:

method: HTTP
so`rov usullaridan birini bildiradi –
PUT, GET, POST, DELETE, PATCH

value:
xaritalangan
URL

params
:
HTTP
parametrlari asosida so`rovni filtrlaydi

headers
:
HTTP
sarlavhalari asosida so`rovni filtrlaydi

produces: HTTP
javoblarining media turini belgilaydi

consumes: HTTP
so`rovining media turini belgilaydi
@RequestMapping annotatsiyasi class va methodlarning ustiga qo`yilishi mumkin.


@RequestMapping


Spring 4.3 dan boshlab @RequestMapping turli xil HTTP methodlari uchun bir nechta 
variantlarni taklif qiladi . Bularga @GetMapping, @PutMapping, @PostMapping, 
@DeleteMapping va @PatchMatching kiradi.
@RequestMapping


@PathVariable
Method parametrini yo`l yoki URIdagi o`zgaruvchilardan biriga
bog`lashimiz mumkin . Buning uchun @PathVariable dan foydalanamiz:


@PathVariable
Shuningdek, biz yo`l o`zgaruvchisini ixtiyoriy deb belgilashni
tanlashimiz mumkin, bu esa " false " talab qiladi :


@RequestParam
Ushbu izoh yordamida biz HTTP so`rovi parametrini method
parametriga bog`lashimiz mumkin :


Biz @RequestParam ga default qiymatni ham berishimiz mumkin. So`rov
parametrining etishmayotgan qiymati uchun default qiymat ishlatiladi:
@RequestParam


@RequestBody
@RequestBody mvc frameworkining izohlaridan biri bo`lib, methodga kirib keluvchi
ob`ektni ketma-ketlashtirish va seriyadan chiqarishni amalga oshirish uchun
kontrollerda ishlatilishi mumkin. Agar siz @RequestBody bilan methodlar parametriga
izoh qo`ysangiz, Spring kiruvchi so`rov tanasining mazmunini tezda parametr
ob`ektingizga
aylantirishga
harakat
qiladi.
Oddiy
qilib
aytganda, @RequestBody izohi HttpRequest tanasini uzatish yoki domen ob`ektiga
moslashtiradi, bu esa kiruvchi HttpRequest tanasini Java ob`ektiga avtomatik
ravishda seriyasizlashtirish imkonini beradi.
Bunda Jsondan Java objectiga o`girishni
misol keltirsak bo`ladi.


@RequestBody


@ModelAttribute
Springning @ModelAttribute annotatsiyasi method parametri yoki methodning
qaytish qiymatini ko`rish sahifasida keyinchalik ishlatilishi mumkin bo`lgan
nomlangan model atributiga ulash uchun ishlatiladi.
SpringMVC da @ModelAttribute 2 joyda ishlatiladi.
1. Method darajasida
2. Method parametr darajasida.


Method darajasida @ModelAttribute


Method attribute darajasida @ModelAttribute


E`TIBORINGIZ UCHUN RAHMAT!

Download 3,06 Mb.
1   2




Download 3,06 Mb.
Pdf ko'rish