Dom4j框架的使用

    dom4j是1个Java的XML API,类似于jdom,用来读写XML文件的。我们说Dom4j是1个框架,框架就是很多很多类的集合,它整合了DOM思想,将文档中的所有内容创建成对象放到内存中,利用事件驱动来对XML实现不同的操作。


   
1.Dom4j的引入


    使用Dom4j时,必须首先引入dom4j.jar,如果使用到了它的拓展功能,还需要引入jaxen⑴.1-beta⑹.jar。


   2.对XML的操作


    要想实现对XML的操作,首先必须读取到XML文档:

    

SAXReader reader = new SAXReader();
Document document = reader.read(new File("src/student.xml"));

    ①查询

    

//1取得根元素
Element root = document.getRootElement();

//2遍历根元素下student的子元素
Iterator<Element> it = root.elementIterator("student");
while(it.hasNext()){
Element studentEle = it.next();
//3取得number属性
String number =studentEle.attributeValue("number");
String name = studentEle.elementText("name");
String age = studentEle.elementText("age");
String sex = studentEle.elementText("sex");
}

    

    ②添加


//1获得students根元素
Element root = document.getRootElement();
//2添加学生元素
Element student = root.addElement("student").addAttribute("number", "ITCAST_003");
//3增加子元素
student.addElement("name").addText("Fanny");
student.addElement("age").addText("23");
student.addElement("sex").addText("female");
//4将新添加的写回到文档中

//1>创建格式化器
OutputFormat format = OutputFormat.createPrettyPrint();
//2>创建写入器
XMLWriter writer = new XMLWriter(new FileWriter("src/studentcopy.xml"),format);
//3>写入文件
writer.write(document);
//4>关闭资源
writer.close();

    ③删除

    

//1.获得根元素
Element root = document.getRootElement();

//2.遍历student的子元素

//2.1>方法1
Iterator<Element> it = root.elementIterator("student");
while(it.hasNext()){
Element studentEle = it.next();
String number = studentEle.attributeValue("number");
if(number == "jerry"){
it.remove();
}
}
//2.2方法2
List<Element> list = root.elements("student");
for(int i = 0; i < list.size(); i++){
Element studentEle = list.get(i);
//3.判断学号是不是等于被删除学生,是的话就履行删除
if("itcast_0001".equals(studentEle.attribute("number"))){
studentEle.getParent().remove(studentEle);
break;
}
}
//3.保存到文档
OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter writer = new XMLWriter(new FileOutputStream("src/studentDel.xml"),format);
writer.write(document);
writer.close();

    总结:

    在学习Dom4j的进程中,感觉很像学习js的时候对DOM的操作,实际上,Dom4j也正是在DOM的基础上实现对XML的操作的,所以这1块的学习1定要和之前的HTML DOM结合起来,会事半功倍的。    

波比源码 – 精品源码模版分享 | www.bobi11.com
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 本站源码并不保证全部能正常使用,仅供有技术基础的人学习研究,请谨慎下载
8. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!

波比源码 » Dom4j框架的使用

发表评论

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系站长
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡