摇摇欲坠的架构未显示枚举的自定义值

问题描述

我创建了一个还存储值的枚举

import com.fasterxml.jackson.annotation.JsonValue;

public enum AnimalType {
  DOG("dog"),CAT("cat"),private final String displayName;

  AnimalType(String displayName) {
    this.displayName = displayName;
  }

  @JsonValue
  public String getDisplayName() {
    return displayName;
  }

  @Override
  public String toString() {
    return displayName;
  }
}

我以这种方式创建枚举,因为用户将给我输入dogcat。枚举值已正确序列化和反序列化。

但是swagger.json显示DOGCAT代替dogcat。我不希望用户看到内部枚举名称,并且由于该模式将由用户使用,因此我想在模式中显示dogcat

        "type" : {
          "type" : "string","enum" : [ "DOG","CAT"]
        },

我尝试使用@JsonProperty注释(例如@JsonProperty("dog")),但这并不能解决问题。您能指导我如何解决这个问题吗?

版本: 挥舞:2.0 杰克逊:2.7.9

解决方法

使用

测试代码
Private Sub Ford_Inventory_Variance_File_CleanUp()
  Dim sh As Worksheet,lastRow As Long,i As Long,rngDel As Range,boolToDelete As Boolean
  
  Set sh = ActiveSheet 'use here your sheet
  lastRow = sh.Range("A" & Rows.count).End(xlUp).Row
  For i = 20 To lastRow
    If sh.Range("A" & i).Value = "" Then
        boolToDelete = True
    ElseIf InStr(sh.Range("A" & i).Value,"/") = 0 And InStr(sh.Range("A" & i).Value,"Total of Inventory") = 0 Then
        boolToDelete = True
    ElseIf Not IsNumeric(left(sh.Range("A" & i).Value,1)) And InStr(sh.Range("A" & i).Value,"Total of Inventory") = 0 Then
        boolToDelete = True
    End If
    If boolToDelete Then
        If rngDel Is Nothing Then 'for first time (when rngDel is nothing)
            Set rngDel = sh.Range("A" & i)
        Else 'next times a union of existing rngDel and the processed cell is created
            Set rngDel = Union(rngDel,sh.Range("A" & i))
        End If
    End If
    boolToDelete = False 'reinitialize the boolean variable
  Next i
  If Not rngDel Is Nothing Then rngDel.EntireRow.Delete xlUp 'rng deletion at once
End Sub
,

我尝试了各种替代方法来使其工作,例如

public enum AnimalType {
  @JsonProperty("dog") DOG("dog"),@JsonProperty("cat") CAT("cat"),

或使用@ {sercheo_87建议的@JsonCreator。但是该架构未显示所需的值。

我发现这是swagger-core中的错误。接受swagger的更新版本对我有帮助。另外,他们正在向后移植对此版本的更改。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...