JaxB注释驱动提取

时间:2012-01-14 10:23:42

标签: jaxb

首先,我是Jaxb的新手,而且最挑剔的是没有完全绕过它。

我想使用注释来削减Xml,而不是生成绑定类 我只想提取一部分xml并将其作为Java.lang.String返回。 没有编组或解组需要。只想从xml中提取。

假设我的XML结构如下

 <root>
   <topMovies>
     <string>The Godfather (1972)</string>
     <string>The Shawshank Redemption (1994)</string>
     <string>The Godfather: Part II (1974)</string>
     <string>The Lord of the Rings: The Return of the King (2003)</string>
  <topMovies>
 <root>

我想提取上面的XML片段(topMovies)。

这当然不会起作用,但可能会让我知道我想说的是什么。

@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "root")
public class GetTopMovies {
@XmlElement(name = "topMovies")
    protected java.lang.String getTopMovies;
}

最后我想要一个带有提取的xml的java String(不带 逃避考虑)。

String topMovies =
 "<topMovies>
   <string>The Godfather (1972)</string>
   <string>The Shawshank Redemption (1994)</string>
   <string>The Godfather: Part II (1974)</string>
   <string>The Lord of the Rings: The Return of the King (2003)</string>
   <topMovies>
 ";

可以使用JAXBElement或XmlAdapter或创建特殊的对象工厂吗?

1 个答案:

答案 0 :(得分:0)

您可以将@XmlAnyElement注释与DOMHandler一起使用来完成此用例:

以下是我给出的答案的链接,以及包含其他详细信息的类似问题:

了解更多信息