Java 如何更改JSON模式生成的POJO的格式?
我在生成下游调用所需的正确POJO时遇到问题。枚举“abc”正在生成为“abc”。但是,枚举“UVwxYZ”生成为UV_WX_YZ,而我的要求是它生成为“UVwxYZ”。我目前正在使用JCodeModel生成POJO。我无法将枚举“UVwxYZ”更改为“UVwxYZ”或“UVwxYZ”,因为架构已经具有依赖项 这是架构代码段:Java 如何更改JSON模式生成的POJO的格式?,java,json,jackson,Java,Json,Jackson,我在生成下游调用所需的正确POJO时遇到问题。枚举“abc”正在生成为“abc”。但是,枚举“UVwxYZ”生成为UV_WX_YZ,而我的要求是它生成为“UVwxYZ”。我目前正在使用JCodeModel生成POJO。我无法将枚举“UVwxYZ”更改为“UVwxYZ”或“UVwxYZ”,因为架构已经具有依赖项 这是架构代码段: { "repositoryType": { "type": "string", "enum": [ "AB
{
"repositoryType": {
"type": "string",
"enum": [
"ABC",
"UVwxYZ"
]
}
}
生成POJO时,其显示为:
ABC("ABC"),
UV_WX_YZ("UVwxYz");
您可以在字段的getter上添加
@JsonValue
:
enum SOEnum{
ABC(“ABC”),
UV_WX_YZ(“UVwxYz”);
私有最终字符串值;
@JsonValue
公共字符串getValue(){
返回值;
}
}
如果枚举与jackson一起用于序列化,结果将是“ABC”、“UVwxYz”
您可以使用getter来转换结果,如将
toUpperCase()
添加到值您可以在字段的getter上添加@JsonValue
:
enum SOEnum{
ABC(“ABC”),
UV_WX_YZ(“UVwxYz”);
私有最终字符串值;
@JsonValue
公共字符串getValue(){
返回值;
}
}
如果枚举与jackson一起用于序列化,结果将是“ABC”、“UVwxYz”
您可以使用getter来转换结果,例如将toUpperCase()
添加到值中
您可以为您的问题添加一些代码吗?您可以为您的问题添加一些代码吗?