三、参数传递
参数传递是RESTful API开发中另一个重要的部分。在Spring Boot中,我们可以使用@RequestParam、@PathVariable、@RequestBody等注解来传递参数。
@RequestParam
@RequestParam注解用于将HTTP请求参数映射到控制器中的方法参数。它可以用于获取查询参数和表单数据等类型的HTTP请求参数。
代码语言:javascript复制@RequestMapping(value = "/hello", method = RequestMethod.GET)
public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
return "Hello " name;
}
在上面的示例中,我们使用@RequestParam注解将HTTP请求参数"name"映射到控制器中的方法参数"name"上。如果没有传递"name"参数,则默认值为"World"。
@PathVariable
@PathVariable注解用于将HTTP请求路径中的变量映射到控制器中的方法参数。它可以用于获取RESTful风格的URL路径中的变量。
代码语言:javascript复制@RequestMapping(value = "/hello/{name}", method = RequestMethod.GET)
public String hello(@PathVariable("name") String name) {
return "Hello " name;
}
在上面的示例中,我们使用@PathVariable注解将HTTP请求路径中的变量"name"映射到控制器中的方法参数"name"上。
@RequestBody
@RequestBody注解用于将HTTP请求体中的数据映射到控制器中的方法参数。它可以用于获取JSON、XML等类型的HTTP请求体数据。
代码语言:javascript复制@RequestMapping(value = "/hello", method = RequestMethod.POST)
public String hello(@RequestBody User user) {
return "Hello " user.getName();
}
在上面的示例中,我们使用@RequestBody注解将HTTP请求体中的JSON数据映射到控制器中的方法参数User对象上。