WebMvcConfigurationSupport を使用した後、返される元の json データが xml になる問題の解決策

質問

WebMvcConfigurationSupport を使用せずにインターセプトした場合に返されるデータは JSON 形式ですが、WebMvcConfigurationSupport を使用してインターセプトした場合、返されるデータは XML 形式になります。
ここに画像の説明を挿入します

理由

Spring フレームワークでは、WebMvcConfigurationSupport は Spring MVC の構成をカスタマイズするために使用できるクラスです。アプリケーションで WebMvcConfigurationSupport を使用しており、以前に返された JSON データが XML になっている場合は、構成に何らかの変更を加えたために、デフォルトのメッセージ コンバーターが変更された可能性があります。

デフォルトでは、Spring はメッセージコンバーターとして MappingJackson2HttpMessageConverter を使用します。これにより、Java オブジェクトを JSON 形式のデータに変換できます。WebMvcConfigurationSupport クラスを継承するときにメッセージ コンバータを明示的に指定しない場合、Spring は Java オブジェクトを XML 形式のデータに変換できる Jaxb2RootElementHttpMessageConverter などの他のデフォルトのメッセージ コンバータを使用する可能性があります。

解決

@Configuration
public class CustomWebMvcConfig extends WebMvcConfigurationSupport {
    
    

    @Override
    protected void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
    
    
        converters.add(new MappingJackson2HttpMessageConverter());
        super.configureMessageConverters(converters);
    }
}

おすすめ

転載: blog.csdn.net/qq_43802454/article/details/132046194