JSON是前后端数据交互最流行的格式。在目前的项目开发中,常见的JSON的转换器有三种(json-lib由于自身的缺陷基本不用,最广泛的还是Jackson):
Jackson
在springboot中默认添加了jackson-databind
作为JSON的处理器,不需要配置其他处理器。如果开发者配置了MappingJackson2HttpMessageConverter
则使用开发者自己配置的,否则系统return new MappingJackson2HttpMessageConverter(objectMapper)
,源码如下:
@Configuration
class JacksonHttpMessageConvertersConfiguration {
//中间代码省略
@Bean
@ConditionalOnMissingBean(
value = {MappingJackson2HttpMessageConverter.class},
ignoredType = {
"org.springframework.hateoas.mvc.TypeConstrainedMappingJackson2HttpMessageConverter", "org.springframework.data.rest.webmvc.alps.AlpsJsonHttpMessageConverter"}
)
public MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter