springmvc中RequestMappingHandlerAdapter与HttpMessageConverter的装配讲解

 更新时间:2019年01月11日 11:17:38   作者:qq_43193797  
今天小编就为大家分享一篇关于springmvc中RequestMappingHandlerAdapter与HttpMessageConverter的装配讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

一.DispatcherServlet 默认装配 RequestMappingHandlerAdapter ,而 RequestMappingHandlerAdapter 默认装配如下 HttpMessageConverter

HttpMessageConverter:

2)加入jackson jar 包后,RequestMappingHandlerAdapter

装配的HttpMessageConverter 如下:

二. HttpMessageConverter

1)HttpMessageConverter 是Spring3.0 新添加的一个接口,负责将请求信息转换为一个对象(类型为 T),将对象(类型为 T)输出为响应信息

2)HttpMessageConverter接口定义的方法:

  • ① Boolean canRead(Class<?> clazz,MediaType mediaType): 指定转换器可以读取的对象类型,即转换器是否可将请求信息转换为 clazz 类型的对象,同时指定支持 MIME 类型(text/html,applaiction/json等)
  • ② Boolean canWrite(Class<?> clazz,MediaType mediaType):指定转换器是否可将 clazz 类型的对象写到响应流中,响应流支持的媒体类型在MediaType 中定义。
  • ③ List getSupportMediaTypes():该转换器支持的媒体类型。
  • ④ T read(Class<? extends T> clazz,HttpInputMessage inputMessage):将请求信息流转换为 T 类型的对象。
  • ⑤ void write(T t,MediaType contnetType,HttpOutputMessgae outputMessage):将T类型的对象写到响应流中,同时指定相应的媒体类型为 contentType。

HttpMessageConverter的主要作用是将请求信息转换为具体的java对象,将对象输出为响应信息

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • java信号量控制线程打印顺序的示例分享

    java信号量控制线程打印顺序的示例分享

    这篇文章主要介绍了java信号量控制线程打印顺序的示例,如ABCABC这样输出线程,大家参考使用吧
    2014-01-01
  • java实现系统捕获异常发送邮件案例

    java实现系统捕获异常发送邮件案例

    这篇文章主要为大家详细介绍了java实现系统捕获异常发送邮件案例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • DragChartPanel可拖拽曲线应用详解

    DragChartPanel可拖拽曲线应用详解

    这篇文章主要为大家详细介绍了DragChartPanel可拖拽曲线的应用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • 解决idea中java出现无效的源发行版问题

    解决idea中java出现无效的源发行版问题

    这篇文章主要给大家介绍了关于解决idea中java出现无效的源发行版问题的相关资料,无效的源发行版是指IntelliJ IDEA无法正确识别和处理的源代码版本,这可能是由于错误的配置、缺少依赖项、不兼容的插件或其他问题导致的,需要的朋友可以参考下
    2024-01-01
  • Java实现简易HashMap功能详解

    Java实现简易HashMap功能详解

    这篇文章主要介绍了Java实现简易HashMap功能,结合实例形式详细分析了Java实现HashMap功能相关原理、操作步骤与注意事项,需要的朋友可以参考下
    2020-05-05
  • SpringCloud中的Stream服务间消息传递详解

    SpringCloud中的Stream服务间消息传递详解

    这篇文章主要介绍了SpringCloud中的Stream服务间消息传递详解,Stream 就是在消息队列的基础上,对其进行封装,可以是我们更方便的去使用,Stream应用由第三方的中间件组成,应用间的通信通过输入通道和输出通道完成,需要的朋友可以参考下
    2024-01-01
  • Java中BigDecimal的加减乘除、比较大小与使用注意事项

    Java中BigDecimal的加减乘除、比较大小与使用注意事项

    对于不需要任何准确计算精度的数字可以直接使用float或double,但是如果需要精确计算的结果,则必须使用BigDecimal类,而且使用BigDecimal类也可以进行大数的操作,下面这篇文章给大家介绍了Java中BigDecimal的加减乘除、比较大小与使用注意事项,需要的朋友可以参考下。
    2017-11-11
  • Java HashMap中除了死循环之外的那些问题

    Java HashMap中除了死循环之外的那些问题

    这篇文章主要介绍了Java HashMap中除了死循环之外的那些问题,这些问题大致可以分为两类,程序问题和业务问题,下面文章我们一个一个来看,需要的小伙伴可以参考一下
    2022-05-05
  • 使用FeignClient进行微服务交互方式(微服务接口互相调用)

    使用FeignClient进行微服务交互方式(微服务接口互相调用)

    这篇文章主要介绍了使用FeignClient进行微服务交互方式(微服务接口互相调用),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Spring Cloud之服务监控turbine的示例

    Spring Cloud之服务监控turbine的示例

    这篇文章主要介绍了Spring Cloud之服务监控turbine的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05

最新评论