XML的对象映射 - MOXy

时间:2016-02-05 01:09:12

标签: java xpath annotations mapping moxy

我一直是MOXy的一个对象映射器,它可以使用XPath通过注释将变量从一个对象或XML Web服务响应映射到另一个对象。

https://www.eclipse.org/eclipselink/documentation/2.4/moxy/advanced_concepts005.htm)。这是一个例子:

@XmlPath("node[@name='first-name']/text()")
private String firstName;

但是它不支持xpath'parent'(EclipseLink MOXy @XmlPath support for axes/parent)或'child'(eclipselink moxy xpath - selecting all child elements of the current node or all elements in a document with a particular name)检查。

ie:这是我希望能够做的一个例子:

XML:

<Customer>
  <Field>
    <Type>Code</Type>
    <Value>abc</Value>
  </Field>
  <Field>
    <Type>Name</Type>
    <Value>cde</Value>
  </Field>
  ...
</Customer>

爪哇

@XmlPath("Customer/Field[child::Type='Code']/Value/text()")
private String CustomerCode;

是否有解决MOXy或添加库以进行父/子检查的工作?

1 个答案:

答案 0 :(得分:1)

有很多图书馆。其中一些是:
 1. JiBX
 2. XStream
 3. JAXB
 4. XMLBeans

XStream被广泛使用且相当不错