springmvc HttpMessageConverter(http消息转换器)
2017-02-12 17:26
429 查看
HttpMessageConverter 主要用于处理request请求报文转java对象(@RequestBody) 和 java对象转response响应报文
此类方法列表:
//用于对@RequestBody注解的参数类型判断是否是支持mediaType格式转换
boolean canRead(Class<?> clazz, MediaType mediaType);
//用于对@ResponseBody注解的返回值类型判断是否是支持mediaType格式转换
boolean canWrite(Class<?> clazz, MediaType mediaType);
//用于返回MediaType列表供其它方法使用,一般配置了<mvc:annotion-driven/>标签就自带了常用的几个MediaType
List<MediaType> getSupportedMediaTypes();
//从请求报文中(封装成HttpInputMessage)获取请求参数,并转换成@RequestBody标注的java类型
T read(Class<? extends T> clazz, HttpInputMessage inputMessage)
throws IOException, HttpMessageNotReadableException;
//用于将@ResponseBody标注的返回值类型转换成对应的响应报文(封装成HttpOutputMessage),输出浏览器
void write(T t, MediaType contentType, HttpOutputMessage outputMessage)
throws IOException, HttpMessageNotWritableException;
HttpMessageConverter实际上由RequestResponseBodyMethodProcessor调用,
RequestResponseBodyMethodProcessor实现了2个接口:
HandlerMethodArgumentResolver
方法列表:
//用于判断是否使用了@RequestBody 注解
boolean supportsParameter(MethodParameter parameter);
//调用HttpMessageConverter的read方法,并做相应的处理
Object resolveArgument(MethodParameter parameter,
ModelAndViewContainer mavContainer,
NativeWebRequest webRequest,
WebDataBinderFactory binderFactory) throws Exception;
HandlerMethodReturnValueHandler
方法列表:
//用于判断是否使用了@ResponseBody 注解
boolean supportsReturnType(MethodParameter returnType);
//调用HttpMessageConverter的write方法,并做相应的处理
void handleReturnValue(Object returnValue,
MethodParameter returnType,
ModelAndViewContainer mavContainer,
NativeWebRequest webRequest) throws Exception;
此类方法列表:
//用于对@RequestBody注解的参数类型判断是否是支持mediaType格式转换
boolean canRead(Class<?> clazz, MediaType mediaType);
//用于对@ResponseBody注解的返回值类型判断是否是支持mediaType格式转换
boolean canWrite(Class<?> clazz, MediaType mediaType);
//用于返回MediaType列表供其它方法使用,一般配置了<mvc:annotion-driven/>标签就自带了常用的几个MediaType
List<MediaType> getSupportedMediaTypes();
//从请求报文中(封装成HttpInputMessage)获取请求参数,并转换成@RequestBody标注的java类型
T read(Class<? extends T> clazz, HttpInputMessage inputMessage)
throws IOException, HttpMessageNotReadableException;
//用于将@ResponseBody标注的返回值类型转换成对应的响应报文(封装成HttpOutputMessage),输出浏览器
void write(T t, MediaType contentType, HttpOutputMessage outputMessage)
throws IOException, HttpMessageNotWritableException;
HttpMessageConverter实际上由RequestResponseBodyMethodProcessor调用,
RequestResponseBodyMethodProcessor实现了2个接口:
HandlerMethodArgumentResolver
方法列表:
//用于判断是否使用了@RequestBody 注解
boolean supportsParameter(MethodParameter parameter);
//调用HttpMessageConverter的read方法,并做相应的处理
Object resolveArgument(MethodParameter parameter,
ModelAndViewContainer mavContainer,
NativeWebRequest webRequest,
WebDataBinderFactory binderFactory) throws Exception;
HandlerMethodReturnValueHandler
方法列表:
//用于判断是否使用了@ResponseBody 注解
boolean supportsReturnType(MethodParameter returnType);
//调用HttpMessageConverter的write方法,并做相应的处理
void handleReturnValue(Object returnValue,
MethodParameter returnType,
ModelAndViewContainer mavContainer,
NativeWebRequest webRequest) throws Exception;
相关文章推荐
- String3 MVC-----使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- SPRING MVC3.2案例讲解--使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务(包括使用 RestTemplate 与 REST 服务进行通信)
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务(转载)
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- springmvc StringHttpMessageConverter 中文乱码的几种解决办法(亲测)
- SpringMvc MappingJacksonHttpMessageConverter 异常
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- 【Spring学习笔记-MVC-1.3】消息转换器HttpMessageConverter
- HttpMessageConverter(消息转换器 )和@responsebody使用
- springmvc StringHttpMessageConverter 中文乱码的几种解决办法
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- Spring-mvc MappingJacksonHttpMessageConverter的使用
- SPRING MVC3.2案例讲解--使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务
- HttpMessageConverter(消息转换器 )和@responsebody使用