怎么在java中使用dom4j对XML文件进行解析

  介绍

这篇文章给大家介绍怎么在java中使用dom4j对XML文件进行解析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

<强>需要解析的XML:

& lt; ? xml  version=?.0“,编码=癠TF-8" ?比;   & lt; classes>   ,& lt; class  name=癝T01"比;   ,& lt; student  id=?0001“祝辞user1   ,& lt; student  id=?0002“祝辞user2   ,& lt; student  id=?0003“祝辞user3   ,& lt;/class>   ,& lt; class  name=癝T02"比;   ,& lt; student  id=?0004“祝辞user4   ,& lt; student  id=?0005“祝辞user5   ,& lt; student  id=?0006“祝辞user6   ,& lt;/class>   ,& lt; class  name=癝T03"比;   ,& lt; student  id=?0007“祝辞user7   ,& lt; student  id=?0008“祝辞user8   ,& lt; student  id=?0009“祝辞user9   ,& lt;/class>   ,& lt; class  name=癝T04"比;   ,& lt; student  id=?0010“祝辞user10   ,& lt; student  id=?0011“祝辞user12   ,& lt; student  id=?0012“祝辞user13   ,& lt;/class>   ,& lt; class  name=癝T05"比;   ,& lt; student  id=?0013“祝辞user14   ,& lt; student  id=?0014“祝辞user15   ,& lt; student  id=?0015“祝辞user16   ,& lt;/class>   & lt;/classes>

java解析xml代码:

/* *   ,* @author  hh   ,*/public  class  XmlUtil  {/* *   ,*读取xml学生列表信息   ,* @return   ,*/,public  List listStudent () {   ,//创建SAXReader对象   读者,SAXReader =new  SAXReader ();   ,Document  Document =,空;   ,try  {//才能通过读方法读取一个文件,转换成文档对象   document 才能=,reader.read (new 文件(“/用户/mac/文档/students.xml"));   ,}catch  (DocumentException  e), {   e.printStackTrace才能();   ,}   ,//获取根节点元素对象   ,Element  node =, document.getRootElement ();   ,return  elementMethod(节点);   ,}/* *   ,*获取节点中的信息   ,* @param 节点   ,* @return   ,*/,private  List elementMethod (Element 节点){   ,List list =, new  ArrayList ();   ,//获取所有class 节点   ,List elementClass =, node.elements (“class");   ,for  (Element  aClass : elementClass), {//才能获取所有学生节点   List<才能;Element>, elelmentStu=aClass.elements (“student");   for 才能;(Element  Element : elelmentStu), {//才能创建学生对象   Student 才能;stu =, new 学生();//类节才能点里名称的值   stu.setSclazz才能(aClass.attribute (“name") .getValue ());//学生节才能点里ID的值   stu.setSid才能(element.attribute (“id") .getValue ());//学生节才能点里的字符串值   stu.setSname才能(element.getStringValue ());      list.add才能(stu);   ,,}   ,}      ,return 列表;   ,}   }

实体类:

/* *   ,* @author  hh   ,*/public  class  Student  {   ,private  String  sname;   ,private  String  sid;   ,private  String  sclazz;         ,public  String  getSname (), {   ,return  sname;   ,}      ,public  void  setSname (String  sname), {=,,this.sname  sname;   ,}      ,public  String  getSid (), {   ,return  sid;   ,}      ,public  void  setSid (String  sid), {=,,this.sid  sid;   ,}      ,public  String  getSclazz (), {   ,return  sclazz;   ,}      ,public  void  setSclazz (String  sclazz), {=,,this.sclazz  sclazz;   ,}      ,@Override   ,public  String  toString (), {   ,return “学生{“+   “才能sname=& # 39;“, +, sname  +, & # 39; \ & # 39; & # 39; +   ,,,,,sid=& # 39;“, +, sid  +, & # 39; \ & # 39; & # 39; +   ,,,,,sclazz=& # 39;“, +, sclazz  +, & # 39; \ & # 39; & # 39; +   & # 39;才能}& # 39;;   ,}   }

@Test代码:

public  class  StudentDaoTest  {   ,@Test   ,public  void  testlistStudent () {   ,List list =, new  XmlUtil () .listStudent ();   ,for  (Student  Student :列表),{   System.out.println才能(学生);   ,}   ,}   null

怎么在java中使用dom4j对XML文件进行解析