对Java并不陌生;但对于XML解析来说相对较新。我对那里的许多XML工具知之甚少,但对其中的任何一个都不太了解。我也不是一个XML-pro。建议使用Java解析此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;
}
注意:这个问题最初是由this question催生我尝试使用SimpleXML来解决这个问题;我认为,也许有人可能会提出一条解决同样问题的途径。
另请注意:我真的很希望有一个CLEAN解决方案...我的意思是,使用注释和/或xpath代码量最少...我想要的最后一件事是庞大的类文件用巨大笨拙的方法...这,我已经有...我试图找到更好的方法。
:d
SAXParser或DocumentBuilder有什么问题?另外,请接受一些以前的问题的答案。 –
@JimGarrison什么也没有! :P问题是,我花了足够的时间在我不知道的事情上徘徊,只是发现他们并没有走完全程,我认为我最好问问知道的人。我现在正在查看SAXParser,但如果你有一个链接或一些示例代码来演示我可能会如何去做,那将是一个福音。 – Bane
注意:我不确定是否需要“-1”...我给出了一个非常明确的说明和示例代码,说明了我的问题,并且提到了另一个类似的明确性的帖子;他们两人都解释说我一直在尝试其他技术,并且找不到合适的人选。是的,我不知道所有的技术......我先前说过。 – Bane