C2 XML文件简介和解析

文章目录

  • 1 XML文件
    • 1.1 XML文件简介
    • 1.2 dom4j解析XML文件

1 XML文件

1.1 XML文件简介

XML文件是可扩展标记语言,用于

1,保存数据
通过标签的属性和文本内容持久化存储数据

2,作为项目的配置文件
如SpringFramework中的IOC容器

3,作为网络传输的数据格式
早期使用XML文件的形式传输数据,现在以JSON为主

1.2 dom4j解析XML文件

XML文件类似HTML文件都是标记型文档,都可以使用W3C制定的dom技术来解析,可以采用dom4j来解析XML文件,很多框架的底层都采用dom4j来解析XML配置文件

dom4j的使用过程:

1,项目中添加dom4j依赖jar文件

2,创建一个SAXReader输入流,读取XML文件生成Document页面对象

3,通过Document对象获取根元素

4,通过根元素查找其中的子元素

5,由子元素获取其中的属性和内部标签中的值

dom4j解析XML文件示例:

<?xml version="1.0" encoding="UTF-8" ?>
<books>
    <book id="2021001">
        <name>时间简史</name>
        <author>霍金</author>
    </book>

    <book id="2021002">
        <name>三体</name>
        <author>刘慈欣</author>
    </book>
</books>
/**
 * @author 雫
 * @date 2021/4/22 - 22:28
 * @function 使用dom4j解析XML文件
 */
public class Test {
     

    public static void main(String[] args) throws DocumentException {
     

		// 通过SAXReader对象根据文件路径获取Documnet对象,从而操作XML文件中的元素
        SAXReader saxReader = new SAXReader();
        Document document = saxReader.read("src/books.xml");
		
		// 获取页面中的根元素
        Element rootElement = document.getRootElement();
        System.out.println(rootElement.asXML());

		// 由根元素获取页面中的所有book子元素
        List<Element> elementList = rootElement.elements("book");

        for(Element element : elementList) {
     
        	// element.attributeValue("xx") 获取该元素属性为xx的值
            String eleAttr = element.attributeValue("id");

			// element.elementText("xx") 获取该元素中子元素为xx的文本内容
            String name = element.elementText("name");
            String author = element.elementText("author");

            System.out.println(eleAttr + ", " + name + ", " + author);
        }

    }

}

解析结果:
C2 XML文件简介和解析_第1张图片

你可能感兴趣的:(#,Web组件)