在生成下游调用所需的正确POJO时遇到问题。枚举“ abc”生成为“ ABC”。但是,枚举“ UVwxYZ”生成为UV_WX_YZ,而我的要求是将其生成为“ UVWXYZ”。我目前正在使用JCodeModel生成POJO。我无法将枚举“ UVwxYZ”更改为“ uvwxyz”或“ UVWXYZ”,因为该架构已具有依赖项。
这是架构片段:
{
"repositoryType": {
"type": "string",
"enum": [
"ABC",
"UVwxYZ"
]
}
}
生成POJO时,它显示为:
ABC("ABC"),
UV_WX_YZ("UVwxYz");
答案 0 :(得分:0)
您可以在您的字段的getter上添加@JsonValue
:
enum SOEnum {
ABC("ABC"),
UV_WX_YZ("UVwxYz");
private final String value;
@JsonValue
public String getValue() {
return value;
}
}
如果枚举与杰克逊一起用于序列化,则结果将为"ABC", "UVwxYz"
。
您可以使用吸气剂来转换结果,就像将toUpperCase()
添加到value