在java中使用SAXParser解析嵌套XML
我需要使用SAX解析器解析嵌套的XML
<ParentNode id="3" name="3" >
<ChildNode>
<InnerNode id="13" name="13" parentID="3" />
</ChildNode>
<ChildNode>
<ParentNode id="2" name="2" >
<ChildNode>
<ParentNode id="1" name="1" >
<ChildNode>
<InnerNode id="11" name="11" parentID="1" />
</ChildNode>
<ChildNode>
<InnerNode id="10" name="10" parentID="1" />
</ChildNode>
</ParentNode>
</ChildNode>
<ChildNode>
<InnerNode id="12" name="12" parentID="2" />
</ChildNode>
</ParentNode>
</ChildNode>
</ParentNode>
ParentNode标记是这里的主标记。ParentNode也可以位于ChildNode标记内。 这里是ParentNode和ChildNode之间的任意关系。 以及hibernate域中ChildNode和InnerNode之间的oneToOne关系
这不是静态XML。它可以更嵌套
# 1 楼答案
一个要考虑使用SAX解析器的设计模式是定义对象的堆栈(例如StaseObjtStase=新StAcd())。将相应的对象推到startElement中的堆栈上。在endElement中将对象从堆栈中弹出。当你想知道包含的(父)对象时,可以查看堆栈的顶部。(例如,在startElement中,如果查看堆栈的顶部,发现其中有一个对象,则它是当前元素定义的对象的父对象。)
# 2 楼答案
这应该会有帮助