推广 热搜: 广场  Java  Word  app  营业  微信公众号  北京代理记账  商城  代理记账  商标交易 

spring boot搭建web项目 SpringBoot项目中如何定制HTTP消息转换器?

   2023-04-28 企业服务招财猫110
核心提示:SpringBoot项目中如何定制HTTP消息转换器?如果想自定义自己的HTTP消息转换器,首先要知道SpringBoot默认是如何进行HTTP消息转换的。让让我们看看如何在日常工作中开发一个简单的g

SpringBoot项目中如何定制HTTP消息转换器?

如果想自定义自己的HTTP消息转换器,首先要知道SpringBoot默认是如何进行HTTP消息转换的。

让让我们看看如何在日常工作中开发一个简单的get请求:

那么当前端请求我们的API时,我们如何将网络传输的字节流序列化成我们想要的对象呢?业务处理后如何返回数据?

在SpringBoot的框架下,HttpMessageConverter可以使用注解@RequestBody和@ResponseBody分别完成请求消息到对象和对象到响应消息的转换。底层灵活的消息转换机制是Spring3中新引入的HttpMessageConverter机制。X..

打开任何集成了Spring-web函数的SpringBoot项目,都可以找到这个HttpMessageConvert:

可以看出他是一个接口类,和他一个包下有很多实现类。有兴趣的同学可以调试一下,进去了解一下这段源代码,在这个过程中你也可以学到很多关于序列化的知识。

源代码分析:如何知道SpringBoot中默认的convert?

项目的启动类上有一个annotation@springbootapplication。如果您单击它,您将看到它包含一系列注释,包括annotation@enableautoconfiguration。继续点击它看:。

我发现我引入了一个类:autoconfigurationimportselector类,有一个方法可以选择imports():

继续点击进入loadmetadata的方法:

至此,相信大家都知道他是怎么装的了:

继续下去,你会知道如何加载消息的默认转换。我赢了。;我不能在这里告诉你答案。希望你能自己进去看看,收获不一样~

自定义自己的convert了解了消息转换器的原理以及如何在SpringBoot中加载,我们就知道如何自定义自己的消息转换器了。首先,我们将实现自己的convert并继承AbstractHttpMessageConverter:

然后定义一个WebConfig类来继承WebMvcConfigurer,并添加我们的自定义convert:

在实际工作中,很多情况下可能不需要自己实现convert,但是可以使用默认的消息转换器。除非你有自己的特殊需求要考虑,否则不建议自己实现conv

springboot项目会用到spring吗?

是的,跳羚是春天的一部分。;的Web开发。只要你用了@Controller或者@RestController,你就是在用Spring。springboot是Spring架构的升级,主体还是Spring。

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
合作伙伴
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  冀ICP备2023006999号-8