1. ホーム
  2. Java

swagger2 モデルが表示されない モデルが見つからない @ApiModel アノテーションが表示されない問題

2022-02-19 22:15:38

swaggerの@ApiModelアノテーションを使用する際の落とし穴の1つは、コントローラで@RequestBodyアノテーションを使用しないとモデルが表示されないことです。

また、エラーを報告しないと、swaggerはspringと連動しており、問題のトラブルシューティングがしにくいです。

1. application/json や application/xml など、デフォルトの application/x-www-form-urlcoded エンコーディングではない content-type のコンテンツを扱うには、@requestBody アノテーションがよく使用されます。一般的には、application/json を処理するために使用されることが多いです。

2. リクエストボディのJSON文字列は、@requestBodyで対応するBeanに束ねることもできますし、もちろん個別に対応する文字列に束ねることも可能です。

3 springBootは@requestBodyアノテーションを使用し、フロントエンドのパラメータはJSON形式で渡す必要があり、Content-Typeは: application/json;charset=UTF-8 形式です。

  RequestBodyを使用するにはMappingJackson2HttpMessageConverterをロードする必要がありますが、SpringBootの公式ドキュメントにはデフォルトでロードされていると記載されています。