【发布时间】:2015-03-18 08:22:04
【问题描述】:
我通过Spring文档了解@RequestBody,他们给出了以下解释:
@RequestBody方法参数注解表示方法参数应该绑定到HTTP请求体的值。例如:
@RequestMapping(value = "/something", method = RequestMethod.PUT)
public void handle(@RequestBody String body, Writer writer) throws IOException {
writer.write(body);
}
您可以使用
HttpMessageConverter将请求正文转换为方法参数。HttpMessageConverter负责将HTTP请求消息转换为对象,将对象转换为HTTP响应体。
DispatcherServlet支持使用DefaultAnnotationHandlerMapping和AnnotationMethodHandlerAdapter进行基于注释的处理。在 Spring 3.0 中,AnnotationMethodHandlerAdapter扩展为支持@RequestBody,并且默认注册了以下HttpMessageConverters:...
但我的困惑是他们在文档中写的那句话是
@RequestBody 方法参数注解表示方法参数应该绑定到 HTTP 请求体的值。
这是什么意思?谁能给我一个例子?
spring doc中@RequestParam的定义是
表示方法参数应绑定到 Web 请求参数的注解。支持
Servlet和Portlet环境中的带注释的处理程序方法。
我对他们感到困惑。请帮我举个例子说明它们之间的不同之处。
【问题讨论】:
-
@kryger 。这不是重复的,因为我有我的研究,我已经通过了春季文档。我已经要求提供示例。我已经给你定义了。我想举例说明它们之间有什么不同。上面的问题没有提供足够的解释,所以我认为它不应该被否决。
标签: spring spring-mvc spring-boot servlet-3.0 http-request-parameters