我需要在Java的swagger-ui中显示枚举的自定义值。
我的DTO中有一个枚举(性别)。摇摇欲坠的UI根据需要显示一个下拉菜单,但显示文本和选项值也相同。
Swagger UI输出如下:
<select id="mgender0.6152790512895818" name="gender" class="parameter ">
<option value="" selected=""></option>
<option value="Female"> Female </option>
<option value="Male"> Male </option>
</select>
如您所见,该值还具有“女性”和“男性”。应该是“ M”和“ F”,而不是全文。
这是我的Java枚举
public enum Gender {
F("Female"), M("Male");
private String displayValue;
private Gender(String displayValue) {
this.displayValue = displayValue;
}
@Override
public String toString() {
return displayValue;
}
public String getDisplayValue() {
return displayValue;
}
public String getName() {
return name();
}
}
预期的预期输出为:
<select id="mgender0.6152790512895818" name="gender" class="parameter ">
<option value="" selected=""></option>
<option value="F"> Female </option>
<option value="M"> Male </option>
</select>
请同样帮助我。我已经尝试过@APIModel属性,但是它在做的事情一定有问题,因为它没有帮助。
最佳答案
考虑实现自己的ParameterBuilderPlugin。
关于java - 如何在Java的Swagger UI中显示枚举的自定义值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36880786/