对 Java 并不陌生;但对于 XML 解析来说相对较新。我对那里的许多 XML 工具知之甚少,但对它们中的任何一个都知之甚少。我也不是 XML 专业人士。
我的特殊问题是……我得到了一个无法修改的 XML 文档,我只需要将它的随机位解析为 Java 对象。只要它是合理的,纯粹的速度并不是一个很大的因素。同样,内存占用空间也不必是绝对最优的,只要不是疯狂的。我只需要通读一次文档来解析它,然后我将把它扔到 bitbucket 中并使用我的 POJO。
所以,我愿意接受建议……您会使用哪种工具?
而且,您能否建议一些入门代码来满足我的特殊需求?
这是我正在尝试制作的示例 XML 和相关 POJO 的片段:
<xml>
<item id="...">
...
</item>
<metadata>
<resources>
<resource>
<ittype>Service_Links</ittype>
<links>
<link>
<path>http://www.stackoverflow.com</path>
<description>Stack Overflow</description>
</link>
<link>
<path>http://www.google.com</path>
<description>Google</description>
</link>
</links>
</resource>
<resource>
<ittype>Article_Links</ittype>
<links>
...
</links>
</resource>
...
</resources>
</metadata>
</xml>
public class MyPojo {
@Attribute(name="id")
@Path("item")
public String id;
@ElementList(entry="link")
@Path("metadata/resources/resource/links")
public List<Link> links;
}
注意:这个问题最初是由这个问题产生的,我试图使用 SimpleXml 解决它;我到了我认为也许有人可以提出解决同一问题的不同途径的地步。
另请注意:我真的希望有一个CLEAN解决方案......我的意思是,使用注释和/或 xpath 以及最少的代码......我想要的最后一件事是具有巨大笨拙方法的巨大类文件...... . 那个,我已经... 我正在努力寻找更好的方法。
:D