Even though both @RequestParam
and @PathVariable
annotations are used to extract some data from URL, there is a key difference between them.
The @RequestParam
is used to extract query parameters, e.g. anything after “?” in the URL while the @PathVariable
is used to extract the part of the URI itself.
For example, if the given URL is
http: //localhost:8080/SpringMVC/books/3232233/?format=json
then you can access the query parameter “format” using the @RequestParam
annotation and /books/{id} using the @PathVariable
, which will give you 3232233.