Swagger向枚举添加描述

Jua*_*que 7 java swagger-2.0

我有一个看起来像这样的课程:

public class Rule {

    private RuleType type; //enum
    private String value;
}
Run Code Online (Sandbox Code Playgroud)

枚举是:

public enum RuleType {
    TYPE_A, TYPE_B, TYPE_C;
}
Run Code Online (Sandbox Code Playgroud)

现在每个规则类型的值都不同.TYPE_A需要数字1到10,TYPE_B为true或false,TYPE_C为字符串.我正在尝试向enum添加swagger注释,以便文档可以显示这个,如下所示:

public enum RuleType {
    @ApiModelProperty(value = "1 - 10")
    TYPE_A, 
    @ApiModelProperty(value = "True or False")
    TYPE_B, 
    @ApiModelProperty(value = "String")
    TYPE_C;
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用.产生的招摇只是忽略了枚举上的属性.有没有办法创建这样的文档?

小智 0

你不能随心所欲地这样做。但还有一个您想要的简单解决方案。

public class Rule {

    @ApiModelProperty(value = 
            "TYPE_A must be 1 - 10\n" +
            "TYPE_B must be True or False\n" +
            "TYPE_C must be String")
    private RuleType type; //enum
    private String value;
}
Run Code Online (Sandbox Code Playgroud)

您可以通过以下链接查看此代码的最终结果: https ://i.stack.imgur.com/pMA6N.png