Mitä eroa on QueryParamilla ja pathParamilla verkkopalveluissa?


Paras vastaus

Hei!

Keskustellaan

QueryParam: – Restful-palvelussa kaikki perustuu Http-protokollaan.

Joten aina kun haluamme lähettää joitain tietoja, voimme lähettää nämä tiedot käyttämällä URL-osoitteeseen liitettyä kyselyparametria.

Esimerkki: –

http://localhost:8081/SearchApp/book?name=java Tässä QueryParam on nimi. ja sen arvo on java.

Joten tässä QueryParamit ovat valinnaisia, kyselyparametrin lähettäminen ei ole pakollista.

Joten jos et lisää QueryParamia, et saa 404-virhettä. Saatat saada joitain nullPointer-poikkeuksia, koska arvo on nolla.

@GET

@Path("/book")

List getBooks(@QueryParam("name")String bookName){

}

PathParam: -Joten jos haluat lähettää tiedot pakollisiksi, voit lisätä arvon segmenttinä suoraan URL-osoitteeseen. Jos et lisää polun parametria, saat 404 -virheen.

Esimerkki: – http://localhost:8081/SearchApp/book/java (joten tässä suoraan arvo java liitetään URL-segmenttinä)

Palvelussa

Voit noutaa näin: –

@GET

@Path("/book/{bookname}")

List getBooks(@PathParam("bookname")String bookName){

}

vastaus

Yleisessä REST-mallissa URL-osoitteen polkuosa edustaa entiteettiluokkien hierarkiaa (/ Tables / Dining Toisaalta kyselyparametrit voidaan varata määritteille luokan ilmentymän löytämiseksi tarkempien tulosten saamiseksi. Haluat esimerkiksi saada luettelon ruskeavärisistä ruokapöydistä alla olevasta URL-osoitteesta.

// tuotteet / pöydät / ruokapöytä? Color = ruskea

@PathParamia käytetään osien sovittamiseen URL-osoitteen parametrina. Esimerkiksi URL-osoitteessa, jonka muoto on http://example.com/tables/{diningtable}, voit käyttää @PathParam (”ruokapöytä”) päästäksesi ruokapöydän kokonaisuusluokkaan.

QueryParamia käytetään avain / arvo-parit URL-osoitteen kyselymerkkijonossa (osa jälkeen?). Esimerkiksi URL-osoitteessa http://example.com/ taulukot / ruokapöytä? Väri = ruskea, voit käyttää @QueryParam (”väri”) -toimintoa saadaksesi ruskeaan värin arvon.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *