遍历xml文件结构并存储它们以供以后在java中的hashmaps中使用

时间:2011-04-17 12:52:47

标签: java xml hashmap

我有单个表节点的XML文件结构,如下所示

<table ID="123" Name="Prj">
  <select>
        <slno>prjslno</slno>
        <to>prjrecepient</to>
        <from>prjsender</from>
        <body>prjcontent</body>
  </select>
  <where>status="new"</where>
  <successupdate>
        <status>'mail sent'</status>
  </successupdate>
  <failureupdate>
        <status>'mail sending failed'</status>
  </failureupdate>
</table>

我的xml文件中有3个这样的节点。我需要遍历xml文件并将内容存储在hashmap中。我试图以下列格式存储它们

key     value
slno    prjslno
to      prjrecepient
from    prjsender
body    prjcontent
where   status="new"

但是当我试图存储状态及其成功和失败的值时,它会被覆盖并存储“邮件发送失败”值而不是“邮件发送”。(我知道原因,因为hashmap支持唯一密钥所以它以这种方式存储)。

但我需要将它们存储在hashmap中供以后使用。有什么方法可以解决?请提出建议。

1 个答案:

答案 0 :(得分:0)

我会从当前及其父元素名称创建复合键,例如:

 map.put("succesupdate/status", "'mail sent'");
 map.put("failureupdate/status", "'mail sending failed'");

它一般不起作用,但可以解决您当前的问题。