๋ด ๋ชจ๋ธ์ ๋ค์ ์ฃผ์์ด ์์ต๋๋ค.
@ApiModelProperty(value = "A list of items", allowableValues = "item1, item2, item3")
private List<String> itemList;
์์ฑ๋ swagger.json์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
"itemList" : {
"type" : "array",
"description" : "A list of items",
"items" : {
"type" : "string"
}
}
allowableValues
์ผ๋ก๋ถํฐ ๋๋ฝ swagger.json
.
๋ํ array๋ List<String>
๋ํ ์ฌ๋ฐ๋ฅธ ์ถ๋ ฅ ์ ํ์
๋๊น?
๋ด ๊ตฌ์ฑ
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
<version>1.5.4</version>
</dependency>
<plugins>
<plugin>
<groupId>com.github.kongchen</groupId>
<artifactId>swagger-maven-plugin</artifactId>
<version>3.1.1</version>
<executions>
<execution>
<id>swagger</id>
<phase>compile</phase>
<goals>
<goal>generate</goal>
</goals>
...
</execution>
</executions>
</plugin>
์, ํ์ฌ allowableValues
๋ ํ๋ฆฌ๋ฏธํฐ๋ธ ๋๋ ๋ฒ์์์ ์๋ํฉ๋๋ค. ์ด์ ๋ํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋์ ์ด๊ฑฐํ ๋ชฉ๋ก์ ์ฌ์ฉํ๊ณ ๊ทธ ๋ชฉ๋ก์์ ํ์ฉ ๊ฐ๋ฅํ ๊ฐ์ ํ์์ํค๋ ๊ฒ์
๋๋ค.
์ด ๋ฌธ์ ๋ ์ด๋ฏธ ์๋ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ข ๋ฃ๋ ๊ฒ์ ๋๊น ์๋๋ฉด ์์ ๋์ง ์์ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์ข ๋ฃ๋ ๊ฒ์ ๋๊น?
๋น์ทํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๋ด ๊ฐ์ฒด์ ์ด๊ฑฐํ ๊ฐ ๋ชฉ๋ก์ด ์์ง๋ง API์์ ์ฌ์ฉํ ์ ์๋ ๊ฐ์ ์ ํํ๊ณ ์ถ์ต๋๋ค.
enum MyEnum { VAL1, VAL2, VAL3 }
์ด๊ฒ์ ์๋ํฉ๋๋ค:
@ApiModelProperty(allowableValues = "VAL1,VAL2")
MyEnum myenum;
์ด๊ฒ์ ์๋ํ์ง ์์ต๋๋ค(allowableValues๋ฅผ ๋ฌด์ํ๊ณ ๊ฐ๋ฅํ ๋ชจ๋ ์ด๊ฑฐํ ๊ฐ์ ๋์ ์ฌ์ฉํจ).
@ApiModelProperty(allowableValues = "VAL1,VAL2")
List<MyEnum> mylist;
ํ์ฉ๋๋ ๊ฐ์ ๋ํด ๋ค๋ฅธ ์ ํ๋ ์ง์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
2019๋
์๋ ์ฌ์ ํ List์์ ์๋ํ์ง ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ด ๋ฌธ์ ๋ ์ด๋ฏธ ์๋ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ข ๋ฃ๋ ๊ฒ์ ๋๊น ์๋๋ฉด ์์ ๋์ง ์์ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์ข ๋ฃ๋ ๊ฒ์ ๋๊น?
๋น์ทํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๋ด ๊ฐ์ฒด์ ์ด๊ฑฐํ ๊ฐ ๋ชฉ๋ก์ด ์์ง๋ง API์์ ์ฌ์ฉํ ์ ์๋ ๊ฐ์ ์ ํํ๊ณ ์ถ์ต๋๋ค.
์ด๊ฒ์ ์๋ํฉ๋๋ค:
์ด๊ฒ์ ์๋ํ์ง ์์ต๋๋ค(allowableValues๋ฅผ ๋ฌด์ํ๊ณ ๊ฐ๋ฅํ ๋ชจ๋ ์ด๊ฑฐํ ๊ฐ์ ๋์ ์ฌ์ฉํจ).