我目前正在使用Jersey的Java为旧的,相当复杂的系统开发RESTful API。我们正在寻求支持两种输入形式-JSON和XML。
[此时,我正在考虑两种实现API的方法-第一种是创建一系列带注释的POJO,传入请求可以映射到这些POJO。
第二个方法是将任何XML请求转换为JSON并手动解析JSON。
就个人而言,第二点对我而言似乎更灵活,特别是因为系统中的某些对象非常复杂。
基本上,我想知道我应该考虑的第一种选择是否有好处(第二种选择有缺点?
编辑:为了进一步说明,在我的情况下,有许多类在此阶段无法注释(该应用程序已经开发了十多年了)。如果要沿POJO路线走下去,我将不得不创建一大堆新的“序列化”对象,这些对象的目的基本上只是为了在XML / JSON之间进行序列化。
这些类将需要管理以与实际的模型类保持同步(其中可能有多个代表相同的对象),这就是为什么我考虑采用“手动”方法的原因。] >
这是否是一个新项目,我肯定会考虑使用批注,但是鉴于目前的情况,我不确定这是否是最佳选择。
我目前正在使用Jersey的Java为旧的,相当复杂的系统开发RESTful API。我们正在寻求支持两种输入形式-JSON和XML。在这一点上,我正在考虑两种方式...
第一种方法的优点和第二种方法的缺点都是,第一种方法的工作量很少。除非您无法使其工作,否则带有JAXB批注的POJO绝对是Jersey的一种选择-就像您无法使其代表所需的XML / JSON一样。通常,尽管如此,您实际上可以免费获得XML和JSON输入和输出。
注意:我是EclipseLink JAXB (MOXy)负责人,也是JAXB 2 (JSR-222)专家组的成员。