SwaggerAPI詳細なメモや注釈共通パラメータの設定

オリジナルボーエン住所:https://blog.csdn.net/java_yes/article/details/79183804

Githubの公式ウェブサイトのアドレス:https://github.com/swagger-api/swagger-core/wiki/Annotations-1.5.X

コメント

@Api:

クラスに作用する、特定のインプリメンテーション・コンテンツのためのクラスラベル。このクラスは、リソースの闊歩を示すフラグです。
パラメータ:

  1. タグ:タグを使用することができます()あなたの代わりにこのプロパティを使用するのでは、複数のラベルの動作のための一連のプロパティすることができます。
  2. 記述:記述は、そのような効果を記述することができます。

@ApiImplicitParam:

個別のリクエストパラメータを表す方法、に作用する
パラメータ:

  1. 名前:パラメータ名。
  2. 値:役割のパラメータの特定の意味。
  3. 必須:必須パラメータ。
  4. データ型:パラメータのデータ型。
  5. paramType:クエリパラメータの種類、いくつかの形式があります。
タイプ 効果
アドレスの形式でデータを送信
質問 自動マッピングは、パラメータの割り当てで直接実行されます
ストリームが唯一のPOSTをサポートして提出
ヘッダ 内部パラメータ提出リクエストヘッダ
サポートフォームのみPOSTの形として提出

私が送信するとPOSTリクエストが、私は体またはクエリを使用するかどうか、全体のパラメータによって受け入れられた、背景がボディ見つからないエラーが報告されます。ここで私は一度ピットでした。このパラメータと@RequestBody紛争でSpringMvcは、私は単にparamTypeを除去し、インターフェイスのテストには影響しません。

@ApiImplicitParams:

複数の@ApiImplicitParamを含む方法:
例:

@ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "book's name", required = true, dataType = "Long", paramType = "query"),
            @ApiImplicitParam(name = "date", value = "book's date", required = false, dataType = "string", paramType = "query")})

@ApiModel:

クラスを表すクラスは、パラメータエンティティ・クラスを受信するために、記載されています。

@ApiModelProperty:

説明モデル属性変更操作上のフィールドのための方法、またはデータ
例:

    @ApiModel(value = "User", description = "用户")
    public class User implements Serializable{

    private static final long serialVersionUID = 1546481732633762837L;

    /**
     * 用户ID
     */
    @ApiModelProperty(value = "用户ID", required = true)
    @NotEmpty(message = "{id.empty}", groups = {Default.class,New.class,Update.class})
    protected String id;

    /**
     * code/登录帐号
     */
    @ApiModelProperty(value = "code/登录帐号")
    @NotEmpty(message = "{itcode.empty}", groups = {Default.class,New.class,Update.class})
    protected String itcode;

    /**
     * 用户姓名
     */
    @ApiModelProperty(value = "用户姓名")
    @NotEmpty(message = "{name.empty}", groups = {Default.class,New.class,Update.class})
    protected String name;

@ApiOperation:

HTTPリクエストの動作を指示するための方法。

    @ApiOperation(value = "获取图书信息", notes = "获取图书信息", response = Book.class, responseContainer = "Item", produces = "application/json")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "book's name", required = true, dataType = "Long", paramType = "query"),
            @ApiImplicitParam(name = "date", value = "book's date", required = false, dataType = "string", paramType = "query")})
    @RequestMapping(value = "/{id}", method = RequestMethod.GET)
    @ResponseBody
    public Book getBook(@PathVariable Long id, String date) {
        return books.get(id);
    }

@ApiResponse:

この方法は、操作に応じて説明することができます。

@ApiResponses:

オブジェクトリストApiResponseラッパー複数のを可能にする方法。
例:

@ApiResponses(value = { 
            @ApiResponse(code = 500, message = "2001:因输入数据问题导致的报错"),
            @ApiResponse(code = 500, message = "403:没有权限"),
            @ApiResponse(code = 500, message = "2500:通用报错(包括数据、逻辑、外键关联等,不区分错误类型)")})

@ApiParam:

パラメータフィールドの説明のための方法、パラメータを表すメタデータを追加する(手順が必要または場合等)

@Authorization:

リソースまたは操作で使用するステートメントの許可方式。

@AuthorizationScope:

OAuth2は任務をご紹介します。

@ResponseHeader:

レスポンスヘッダ、使用。

公開された33元の記事 ウォンの賞賛9 ビュー8701

おすすめ

転載: blog.csdn.net/Serena0814/article/details/94717217