SpringBoot关于Json解析方案

1.在spring-web起步器里面默认加上了json的依赖.可以直接返回json字符串

关于HttpMessageConverter:这是一个消息转换器:
1.将服务端返回的对象序列化成Json字符串
2.将前端传来的Json字符串反序列化成Java对象

所以不论Gson FastJson 都有GsnHttpMessageConverter或FastJsonHttpMessageConverter

参考源代码:

@ConditionalOnBean({Jsonb.class})
    @Conditional({JsonbHttpMessageConvertersConfiguration.PreferJsonbOrMissingJacksonAndGsonCondition.class})
    static class JsonbHttpMessageConverterConfiguration {
        JsonbHttpMessageConverterConfiguration() {
        }

        @Bean
        @ConditionalOnMissingBean
        JsonbHttpMessageConverter jsonbHttpMessageConverter(Jsonb jsonb) {
            JsonbHttpMessageConverter converter = new JsonbHttpMessageConverter();
            converter.setJsonb(jsonb);
            return converter;
        }
    }

@ConditionalOnMissingBean
如果没有自己配置这个Bean 就会执行下面的代码
@Bean
@ConditionalOnMissingBean
JsonbHttpMessageConverter jsonbHttpMessageConverter(Jsonb jsonb) {
JsonbHttpMessageConverter converter = new JsonbHttpMessageConverter();
converter.setJsonb(jsonb);
return converter;
}
然后就给你返回一直他给你提供的转换器

你可能感兴趣的:(SpringBoot关于Json解析方案)