将XML文档转换为POJO

时间:2016-02-28 15:03:09

标签: java xml jaxb pojo

我有一堆XML文档(源代码),我需要转换为具有不同结构(目标)的POJO。我的第一个明显的想法是使用JAXB和XSLT的组合。但是,有些问题我不确定这是否合适。

  1. 我无法访问来源的XSD。
  2. 我不需要将目标作为XML结构,而是像POJO一样。
  3. 然后我想到创建像映射表这样的东西,比如说。

    XPath to source XML element --> Target element
    

    然而,这会导致很多"映射"代码,特别是涉及复杂数据类型时。

    您对我如何实现这一点有什么建议吗?

2 个答案:

答案 0 :(得分:0)

我建议使用JSON。

您不必事先了解XML的结构。只需将XML吸入DOM对象或SAX流中,遍历它并吐出等效的JSON对象。 XSLT也可以很好地工作。

这是一个关于如何将JSON文件加载到java对象中的示例/ discussios的链接。

load json from file into object

我怀疑编程方式与处理XML文档的工作方式相同,因为它是一个JSON文档。

答案 1 :(得分:0)

如果您有一个代表性的XML文档,该文档显示了包含XML文档域的所有可能的子元素(例如,如果XML文档中有任何CHOICE元素,那么您可以使用代表性的XML元素来显示所有可能的元素CHOICE路径),然后您可以简单地使用XML Spy之类的工具从代表性XML文件中反向工程/推断架构,然后使用该推断架构来驱动JAX-B。

相关问题