Dans Spring MVC, la fonction des deux est de lier la valeur du paramètre dans la requête au paramètre de méthode dans le contorl. La différence est que l'URL est écrite différemment.
Lorsque vous utilisez @RequestParam, l'URL ressemble à ceci : http://host:port/path?Parameter name=parameter value
Lorsque vous utilisez @PathVariable, l'URL ressemble à ceci : http://host:port/path/Parameter value
Par exemple :
@RequestMapping(value="/user",method = RequestMethod.GET)
public @ResponseBody
Utilisateur printUser( @RequestParam( value = "id", obligatoire = false, defaultValue = "0")
int id) {
Utilisateur utilisateur = nouvel utilisateur(); user = userService .getUserById(id);
retour de l'utilisateur 🎜>
@RequestMapping(value="/user/{id:\d+}",method = RequestMethod.GET)
@ResponseBody
Utilisateur printUser2(@PathVariable int id) {
Utilisateur utilisateur = nouvel utilisateur ();
utilisateur = userService .getUserById(id);
utilisateur de retour 🎜>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!