2011-05-10 50 views
2

我在尋找將XML文檔解析爲Java對象的不同方式。將XML文檔解析爲Java對象的方法

我有一個XML文檔,我需要解析這個XML文檔來提取元素並將它們解析爲Java對象。

你能推薦以下嗎?

  • 不同的方法
  • 生產分析器工具爲Java
+0

一些類似的問題:http://stackoverflow.com/questions/3276149/java-converting-xml-to-java-objects,http://stackoverflow.com/questions/3495336/is-there-a-declarative三通對解析的XML到Java對象 – Mark 2011-05-10 08:58:20

回答

0

個人給出的解決方案,我將使用Groovy程序的XML文檔的一個簡單的XML解析器使用XmlSlurper並將地圖作爲接口返回。

或者只是使用Groovy的返回值

class XmlParseHelper { 
    private def xmlNode; 

    private String elementName 


    public XmlParserHelper(String elementName, String xml){ 
     this.elementName = elementName 
     xmlNode = new XmlSlurper().parseText(xml) 
    } 

    public int getTotalRows(){ 
     return xmlNode.table.find{[email protected] == elementName}.row.size() 
    } 


    public String getValue(String columName, int index){ 
     return xmlNode.table.find{[email protected] == elementName}.row[index].column.find{[email protected] == columnName}.toString() 
    } 
} 

,可以這樣

//xml is the string of the xml 
XmlParseHelper xmlParseHelper = new XmlParseHelper ("mytable", xml); 

     for(int i = 0; i < XmlParseHelper .getTotalRows(); i++){ 
      String code= xmlParseHelper.getValue("code", i); 
      String name= xmlParseHelper.getValue("name", i); 
..... 
    } 

這是一個特定的XML使用,但是很好:這是一個不同的方法。