რა განსხვავებაა @RequestMapping-სა და @PostMapping-ს შორის?
რა განსხვავებაა @RequestMapping-სა და @PostMapping-ს შორის?

ვიდეო: რა განსხვავებაა @RequestMapping-სა და @PostMapping-ს შორის?

ვიდეო: რა განსხვავებაა @RequestMapping-სა და @PostMapping-ს შორის?
ვიდეო: Difference between @RequestMapping and @GetMapping 2024, მაისი
Anonim

დასახელების კონვენციიდან ჩვენ ვხედავთ, რომ თითოეული ანოტაცია გამიზნულია შესაბამისი შემომავალი მოთხოვნის მეთოდის ტიპზე, ანუ @GetMapping გამოიყენება GET ტიპის დასამუშავებლად. დან მოთხოვნის მეთოდი, @ PostMapping გამოიყენება POST ტიპის დასამუშავებლად დან მოთხოვნის მეთოდი და ა.შ.

ამ გზით, რა განსხვავებაა @RequestMapping-სა და @PostMapping-ს შორის?

კონკრეტულად, @ PostMapping არის შედგენილი ანოტაცია, რომელიც მოქმედებს როგორც მალსახმობი ამისთვის @ RequestMapping (მეთოდი = RequestMethod. ასე რომ, ეს არის მხოლოდ მოსახერხებელი ანოტაცია, რომელიც არის უფრო "სიტყვიერი" და მიუთითებს, რომ გამოყენებულია მასთან ანოტაციის მეთოდი ამისთვის POST HTTP მოთხოვნების დამუშავება. მე ახლახან შევამოწმე თქვენი კონტროლერის მეთოდები 2.1-ით.

გარდა ზემოთ, რა არის GetMapping და PostMapping? @ GetMapping არის @RequestMapping ანოტაციის სპეციალიზებული ვერსია, რომელიც მოქმედებს როგორც მალსახმობი @RequestMapping (მეთოდი = RequestMethod. GET). @ GetMapping ანოტირებული მეთოდები ამუშავებს HTTP GET მოთხოვნებს, რომლებიც შეესაბამება მოცემულ URI გამონათქვამს.

ამასთან დაკავშირებით, რა არის PostMapping?

@ PostMapping არის შედგენილი ანოტაცია, რომელიც მოქმედებს როგორც მალსახმობი @RequestMapping (მეთოდი = RequestMethod. POST). @ PostMapping ანოტირებული მეთოდები ამუშავებს HTTP POST მოთხოვნებს, რომლებიც შეესაბამება მოცემულ URI გამონათქვამს. ამ ანოტაციებს შეუძლიათ გააუმჯობესონ კოდის წაკითხვა.

რატომ ვიყენებთ @PostMapping?

@ PostMapping HTTP POST მოთხოვნების დამუშავება გაითვალისწინეთ, რომ HTTP POST მოთხოვნების დამუშავებაზე პასუხისმგებელი მეთოდი უნდა იყოს ანოტაციით @ PostMapping ანოტაცია. ყურადღება მიაქციეთ, როგორია @RequestBody ანოტაცია გამოყენებული მეთოდის არგუმენტის ობიექტის აღსანიშნავად, რომელშიც JSON დოკუმენტი გადაიყვანება Spring Framework-ით.