处理方法入参的形式,即使用HttpMessageConverter<T>,这个非常强大。它提供了两种途径:
1) 使用@RequestBody/@ResponseBody对处理方法进行标注;
2) 使用HttpEntity<T>/ResponseEntity<T>作为处理方法的入参或返回值。
HttpMessageConverter
顾名思义,它负责将请求信息转换为一个对象,或者将对象输出为响应信息。前面说过,当请求映射到具体的处理方法后,DispatcherServlet
调用HandlerAdapter
来封装并执行处理方法。DispatcherServlet
默认已经安装了AnnotationMethodHandlerAdapter
作为HandlerAdapter
的组件实现类,HttpMessageConverter
即由AnnotationMethodHandlerAdapter
使用,将请求信息转换为对象,或者将对象转换为响应信息。先看几个示例:
- 将报文体转换为字符串绑定到方法入参中
- @RequestMapping(value= "/handle41")
- publicString handle41(@RequestBody StringrequestBody ) {
- System.out.println(requestBody);
- return "success";
- }