跳到主要内容

Spring Boot 3.x特性-JSON(gson,jackson,json-b,fastjson)

系列文章目录

系列文章:Spring Boot 3.x 系列教程


文章目录

  • 系列文章目录
  • 前言
  • 一、Jackson
  • 二、Gson
  • 三、JSON-B
  • 四、Fastjson

前言

Spring Boot提供了与三个JSON映射库的集成:

  • Gson
  • Jackson
  • JSON-B

Jackson 是首选的默认库。

Spring Boot 3.x- Servlet Web应用程序开发(Spring MVC)文中有介绍过:

> Spring MVC使用HttpMessageConverter接口来转换HTTP请求和响应。默认情况下是开箱即用,例如,对象可以自动转换为JSON(通过使用Jackson库)或XML(如果可用,则使用Jackson XML扩展;如果Jackson XML扩展不可用,则使用JAXB),默认情况下,字符串以UTF-8编码。

Spring Boot自带的JSON格式转换,HttpMessageConverter实现有如下几种:

1、 MappingJackson2HttpMessageConverter(默认)

2、 JsonbHttpMessageConverter

3、 GsonHttpMessageConverter

可以使用属性spring.mvc.converters.preferred-json-mapper选择具体的josn(jackson,gson,jsonb)转换方式。


一、Jackson

Jacksonspring-boot-starter-json的一部分, 提供了Jackson的自动配置。当Jackson位于类路径中时,将自动配置ObjectMapper。Spring Boot并且提供了几个配置属性,用于定制ObjectMapper的配置。