我想在swager中记录枚举。
根据文档
Java
package betlista.tests.swagger;
import betlista.tests.swagger.model.Input;
import betlista.tests.swagger.model.Output;
import com.wordnik.swagger.annotations.Api;
import com.wordnik.swagger.annotations.ApiOperation;
@Api(value ="first", position = 1)
public class RestServiceFirst {
@ApiOperation(value ="foo1 operation", httpMethod ="POST", position = 1, nickname ="foo")
public void foo1(Input input) {
}
@ApiOperation(value ="bar1 operation", response = Output.class, httpMethod ="GET", position = 2, nickname ="bar")
public Output bar1() {
return null;
}
}
第二个服务package betlista.tests.swagger;
import betlista.tests.swagger.model.Input;
import betlista.tests.swagger.model.Output;
import com.wordnik.swagger.annotations.Api;
import com.wordnik.swagger.annotations.ApiOperation;
@Api(value ="second", position = 2)
public class RestServiceSecond {
@ApiOperation(value ="foo2 operation", httpMethod ="POST", position = 1)
public void foo2(Input input) {
}
@ApiOperation(value ="bar2 operation", response = Output.class, httpMethod ="GET", position = 2)
public Output bar2() {
return null;
}
}
输入package betlista.tests.swagger.model;
import com.wordnik.swagger.annotations.ApiModel;
import com.wordnik.swagger.annotations.ApiModelProperty;
@ApiModel
public class Input {
@ApiModelProperty(dataType ="string", allowableValues ="M, T", value ="description", notes ="notes")
public Day day;
}
天package betlista.tests.swagger.model;
public enum Day {
Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday;
}
输出package betlista.tests.swagger.model;
import com.wordnik.swagger.annotations.ApiModel;
@ApiModel(value ="Output")
public class Output {
@ApiModelProperty
String field;
}
pom.xml
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
betlista
tests-swagger
0.0.1-SNAPSHOT
com.wordnik
swagger-jaxrs_2.10
1.3.2
com.github.kongchen
swagger-maven-plugin
2.0
betlista.tests.swagger;betlista.tests.swagger.model
1.0.0
http://localhost:port/rest
${basedir}/strapdown.html.mustache
${basedir}/target/generated/strapdown.html
${basedir}/target/generated/apidocs
false
compile
generate
在tests-swaggertargetgeneratedapidocsfirst.json"models" : {
"Input" : {
"id" :"Input",
"description" :"",
"properties" : {
"day" : {
"type" :"string",
"enum" : ["M"," T" ]
}
}
}
}
但这里有"models" : {
"Input" : {
"id" :"Input",
"description" :"",
"properties" : {
"day" : {
"$ref" :"Day",
"enum" : ["M"," T" ]
}
}
}
}