Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın Türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi

0
@RequestParam ve @PathParam arasındaki fark

Açık 1 Cevaplar 62 Gösterim Java
Selamlar,

Ben bir webservis yazmaya çalışıyorum. Değerleri @PathParam ile aldığım zaman (    http://localhost/servis/sayfa/birinci_deger/ikinici_deger   ) şeklinde url den giriş yapınca program çalışıyor. Verdiğim değerleri içerde döndürebiliyorum. Ama benden istenen (      http://localhost/servis/sayfa/?birinci_deger=AAAA&ikinci_deger=BBBB    ) şeklinde olması. Araştırdığım kadarıyla bu da @RequestParam oluyor. Bunlar arasında ki fark nedir ?

1 cevap

1

@RequestParam, URL'nin sorgu dizesindeki anahtar/değer çiftlerine (? İşaretinden sonraki kısmı) erişmek için kullanılır. Örneğin, hasscript.com/java?id=1 url'sinde, id değerini almak için @RequestParam("id") kullanabilirsiniz.

@PathParam, URL'nin bir bölümünü parametre olarak eşleştirmek için kullanılır.Örneğin, hasscript.com/java/{birinci_deger} biçimindeki bir url'de, birinci_deger adlı parametrenin değerini almak için @PathParam ("birinci_deger") kullanabilirsiniz.

Farkları

1) @RequestParam parametrelerini çıkarmak için kullanılırken @PathParam verileri doğrudan URI'den ayıklamak için kullanılır.

2) @RequestParam, verilerin çoğunlukla sorgunun azaltmalarına(the query abatements) aktarıldığı geleneksel bir web uygulamasında daha yararlı olurken @PathParam, URL'nin değerler içerdiği RESTful web hizmetleri için daha uygundur.

3) Spring MVC, aynı yöntemde birden fazla @PathParam kullanmanıza izin verir, ancak birden fazla argümanın aynı kalıbı yoktur. Örnek olarak renk=mavi&renk=kırmızı böyle bir kullanıma izin verilmez  Bunun yerine renk=mavi-kırmızı tarzında bir sorgu kullanıp buna göre programınızı şekillendirebilirsiniz.

 

Kaynak = https://javarevisited.blogspot.com/2017/10/differences-between-requestparam-and-pathvariable-annotations-spring-mvc.html

 

 

 

(167 puan)