利用JDOM2读取XML数据

首先,java读取xml有4种方式:

  1. DOM生成和解析XML文档
  2. SAX生成和解析XML文档
  3. DOM4J生成和解析XML文档(Maven仓库中最新只到2005.05)
  4. JDOM生成和解析XML(JDOM2Maven仓库中最新导2015。2,但是使用量不如DOM4J)
    优缺点详见以下链接 详解Java解析XML的四种方法
    因为我只是解析微信公众平台的XML数据,所以使用JDOM2就够了。
    以下是解析xml的代码:
import java.io.StringReader;

import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder;
import org.xml.sax.InputSource;

public class Test {

    public static void main(String[] args) throws Exception {
        SAXBuilder builder = new SAXBuilder();
        String xmlDoc = "<xml>"
                + "<URL><![CDATA[http://w2028953318.imwork.net/TestWeiChat/MainServlet]]></URL>"
                + "<ToUserName><![CDATA[a]]></ToUserName>"
                + "<FromUserName> <![CDATA[s]]></FromUserName>"
                + "<CreateTime>123154</CreateTime>"
                + "<MsgType><![CDATA[text]]></MsgType>"
                + "<Content><![CDATA[汉字哈子]]></Content>"
                + "<MsgId>12314</MsgId>"
                + "</xml>";
        StringReader read = new StringReader(xmlDoc);
        InputSource source = new InputSource(read);
        Document document = builder.build(source);
        Element root = document.getRootElement();// 获得根节点
        System.out.println(root);
        for(Element e: root.getChildren()){
            System.out.print(e.getName()+"\t");
            System.out.println(e.getText());
        }
        System.out.println(root.getChildText("URL"));
    }
}

拓展链接:
JDOM2工具类
jdom生成xml文件(使用jdom2引包的时候把jdom换成jdom2就行了)
jdom 2.解析xml
使用JDOM2.0.4 操作/解析xml

你可能感兴趣的:(java,xml)