java解析xml字符串怎么全部都解析

<?xml version='1.0' encoding='UTF-8'?>
<root>
    <header>
        <mark id='321'>this is a mark!</mark>
    </header>
    <body>
        <data id='1'>
            <first>
                <second>来</second>
            </first>
        </data>
        <data id='2'>
            <first>
                <second>来解析</second>
                <second>解析</second>
            </first>
        </data>
    </body>
</root>

用java怎么一次性全部解析,还要有层级关系(包括这几个id也要解析出来)

前几天写了一个用XStream解析xml的,你可以看一下XStream解析XML

java中将xml文件或字符串转换为document对象,然后通过xpath可以使用任意条件(如: 标签名称 / 标签属性...等)进行查询.
这里给你个思路,具体怎么实现的话还是得靠你自己去百度.