RESTful API-序列化与'解析'

问题描述 投票:2回答:2

我目前正在使用Jersey的Java为旧的,相当复杂的系统开发RESTful API。我们正在寻求支持两种输入形式-JSON和XML。

[此时,我正在考虑两种实现API的方法-第一种是创建一系列带注释的POJO,传入请求可以映射到这些POJO。

第二个方法是将任何XML请求转换为JSON并手动解析JSON。

就个人而言,第二点对我而言似乎更灵活,特别是因为系统中的某些对象非常复杂。

基本上,我想知道我应该考虑的第一种选择是否有好处(第二种选择有缺点?

编辑:为了进一步说明,在我的情况下,有许多类在此阶段无法注释(该应用程序已经开发了十多年了)。如果要沿POJO路线走下去,我将不得不创建一大堆新的“序列化”对象,这些对象的目的基本上只是为了在XML / JSON之间进行序列化。

这些类将需要管理以与实际的模型类保持同步(其中可能有多个代表相同的对象),这就是为什么我考虑采用“手动”方法的原因。] >

这是否是一个新项目,我肯定会考虑使用批注,但是鉴于目前的情况,我不确定这是否是最佳选择。

我目前正在使用Jersey的Java为旧的,相当复杂的系统开发RESTful API。我们正在寻求支持两种输入形式-JSON和XML。在这一点上,我正在考虑两种方式...

xml json rest jersey
2个回答
3
投票

第一种方法的优点和第二种方法的缺点都是,第一种方法的工作量很少。除非您无法使其工作,否则带有JAXB批注的POJO绝对是Jersey的一种选择-就像您无法使其代表所需的XML / JSON一样。通常,尽管如此,您实际上可以免费获得XML和JSON输入和输出。


2
投票

注意:我是EclipseLink JAXB (MOXy)负责人,也是JAXB 2 (JSR-222)专家组的成员。

© www.soinside.com 2019 - 2024. All rights reserved.