首页 > 代码库 > xml学习

xml学习

XML

定义:

可扩展的标签语言。

作用:

配置文件

XML解析:

XML解析方式:

  1.sax:特点:逐行解析,只能查询。

  2.dom:特点:一次性将文档加载到内容中,形成一个dom树,可以对dom树进行curd操作。

解析技术:

★dom4j:比较常用的解析开发包,hibernate底层采用。

dom4j技术进行查询操作.
使用步骤:
1.导入jar包
2.创建一个核心对象 SAXReader
new SAXReader();
3.将xml文档加载到内存中形成一棵树
Document doc=reader.read(文件路径)//注意文件路径在写/的时候注意需要转义为//
4.获取根节点
Element root=doc.getRootElement();
5.通过根节点就可以获取其他节点(文本节点,属性节点,元素节点)
获取所有的子元素
List<Element> list=root.elements()
获取元素的指定属性内容
String value=http://www.mamicode.com/root.attributeValue("属性名");
获取子标签标签体:遍历list 获取到每一个子元素
String text=ele.elementText("子标签名称")

代码:

 1 package com.uestc; 2 import java.util.List; 3 import org.dom4j.Document; 4 import org.dom4j.Element; 5 import org.dom4j.io.SAXReader; 6 public class Dom4jDemo { 7     public static void main(String[] args) throws Exception  8     {   //创建核心对象 9         SAXReader reader=new SAXReader();10         //获取dom树11         Document doc=reader.read("D:\\workspace\\test1\\xml\\web.xml");12         //获取根节点13         Element root=doc.getRootElement();14         //获取其他节点15         List<Element> list=root.elements();16         //遍历集合17         for(Element ele :list)18         {19             //获取servlet-name的标签体20             String text=ele.elementText("servlet-name");21             //获取url-pattern的标签体22             System.out.println(text);23             System.out.println(ele.elementText("url-pattern"));24         }25         String value=http://www.mamicode.com/root.attributeValue("version");26         System.out.println(value);27             //获取root的version属性值28     }29 30 }

 

输出:

HelloMyServlet
null
HelloMyServlet
/hello
2.5

xml学习