Java 是否可以自定义Json元素';根据Json模式的数据类型?

Java 是否可以自定义Json元素';根据Json模式的数据类型?,java,json,xml,stax,xml-to-json,Java,Json,Xml,Stax,Xml To Json,通过StAXON解析器将XML转换为JSON,JSON模式(预期)和实际响应JSON之间存在数据类型不匹配 例如: 根据Swagger模式,我们希望字段有一个“字符串”值,但XML-to-JSON解析器给我们提供的“整数”与Swagger/Schema文档不匹配 在Swagger/Json模式中,accountId类型被称为String "accountId" : { "type" : "string", "description" : "The

通过StAXON解析器将XML转换为JSON,JSON模式(预期)和实际响应JSON之间存在数据类型不匹配

例如: 根据Swagger模式,我们希望字段有一个“字符串”值,但XML-to-JSON解析器给我们提供的“整数”与Swagger/Schema文档不匹配

在Swagger/Json模式中,accountId类型被称为String

"accountId" : {
            "type" : "string",
            "description" : "The Id of the account",
            "readOnly" : true
          }
accountId的XML元素值为:
123
将XML转换为JSON后,帐户ID为:
**123**
但根据模式,我们的期望是accountId:
**“123”**

XML到JSON的通用解析逻辑:

  • 如果元素只有数字,但以零开头:
    0123
    ,则Json输出为:
    String{accountId:“0123”}
  • 如果元素只有数字,但不以零开头:
    123
    ,则Json输出为:
    Integer{accountId:123}
  • 如果元素包含字符:
    Abc
    ,则Json输出为:
    String{accountName:“Abc”)
  • 它将根据数据转换Json,而不是任何模式,显然我在解析Staxon解析器时没有提供任何模式

    是否有任何方法可以更改JSON,该JSON应该与expect JSON模式匹配。 根据上面的场景,我希望得到一个字符串值,它应该查看模式并生成字段的数据类型。 注意:也不希望将全部转换为字符串

    提前感谢