SpringBoot整合WEB开发--(一)处理jsON返回数据(springboot框架返回json数据)

网友投稿 1272 2022-09-14

SpringBoot整合WEB开发--(一)处理JSON返回数据(springboot框架返回json数据)

SpringBoot整合WEB开发--(一)处理JSON返回数据(springboot框架返回json数据)

1.使用默认的json转换HttpessageConverter

Json是目前主流的前后端数据传输方式,SpringMVC中使用消息转化器HttpMessageConverter对JSON的转换提供了很好的支持,在SpringBoot中对相关配置做了进一步简化。

这个依赖中默认加入了jacjson-databind作为JSON处理器,此时不需要添加额外的Json处理器就可以返回json了。

这是Springboot自带的处理方式,如果采用这种方式,对于字段忽略,日期格式化等都可以使用注解实现。

Spring中默认提供的MappingJackson2HttpMessageConverter去实现json转换的。

2.自定义转换器

  常见的JSON处理器除了Jackson-databind,还有Gson和fastjson

2.1使用Gson

  Gson是Google的一个开源的JSON解析框架,使用他之前首先去除默认的jackson-databind,然后加入Gson依赖。

SpringBoot中默认提供了Gson的自动转换类GsonHttpMessageConverterConfiguration,因此可以像使用jackson-databind那样直接使用Gson,但是在Gson进行转换时,如果想对日期数据进行格式化,还需要自定义HttpMessageConverter。

@ConditionalOnMissingBean注解表示当项目中没有提供GsonHttpMessageConverter 时才会使用默认的GsonHttpMessageConverter,所以我们自己写一个  GsonHttpMessageConverter就可以避免没有GsonHttpMessageConverter从而使用默认的了。

2.2使用fastjson

阿里巴巴的json解析框架,可以集成到SpringBoot中,不同于Gson,fastjson继承后并不能立即使用,还需要开发者提供HttpMessageConverter后才可以使用。

同样,去除jsckson-databind依赖,加入fastjson依赖

配置fasjson的HttpMessageConverter

若输出中文有乱码:spring.http.encoding.force-response=true

对于FastJsonHttpMessageConverter 的配置,还有一种方式

引入spring-boot-starter-web后,他依赖spring-boot-autoconfigure,在这个自动化配置中,有一个WebMvcAutoConfiguration类提供了对SpringMVC最基本的配置如果希望自己配置只需要实现WebMvcConfigurer接口即可。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:npm 各种设置命令
下一篇:Tomcat基础 博文目录
相关文章

 发表评论

暂时没有评论,来抢沙发吧~