【发布时间】:2011-12-21 22:55:30
【问题描述】:
所以我的代码是 api 的客户端,数据以 xml 形式返回,我能够从该 xml 的一些示例创建有效的 xsd 文件,然后从模式生成一些 JAXB 类,因此我的代码现在可以加载和无需直接使用 Xml 即可处理 xml 数据。
但不幸的是,在最新版本的 api 中,他们放弃了对 xml 的支持,只返回 json。有没有类似于我的 xml 进程的 json 进程?
如果无法从模式中获得解决方案,那么如果我手动创建我的 json 类,我可以使用它们来自动输入原始 json 数据,所以至少我只需要处理一次 json。
编辑:也许https://github.com/ko5tik/jsonserializer 会有用
更新:仅供参考,所以我查看了 jsonschema2pojo,但这仅从模式创建 pojo,而我实际上并没有 json 模式,只有实际的 json。我尝试从我拥有的示例 json 创建一个模式,但除了最简单的示例之外,它并没有让它工作。
然后我查看了http://wiki.fasterxml.com/JacksonInFiveMinutes,如果 Id 设法让它工作,Jackson 将能够使用 jsonschema2pojo 创建的 pojo。因此,我尝试按照示例进行操作,并根据我拥有的 json 数据创建了一个 POJO,这很容易,然后我尝试使用它进行完整的数据绑定,并且它第一次工作。
所以总而言之,我将使用 Jackson 来处理 web 服务返回的 json,我必须为每个实体手动创建一个 POJO,但至少它可以工作。
【问题讨论】:
-
仅供参考,从 v0.3.3 开始,jsonschema2pojo 还支持从示例 JSON 文档(不是模式)生成类型。