05-xml

1.XML 简介

什么是 xml?
xml 是可扩展的标记性语言。

xml 的作用?
在这里插入图片描述

2、xml 语法

3.1、文档声明

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2、xml 注释

html 和XML 注释 一样 : < !-- html 注释 -->

3.3、元素(标签)

1)什么是 xml 元素
在这里插入图片描述
2)XML 命名规则

  • 2.1)名称可以含字母、数字以及其他的字符在这里插入图片描述
  • 2.2)名称不能以数字或者标点符号开始
    在这里插入图片描述
  • 2.3)名称不能以字符 “xml”(或者 XML、Xml)开始 (它是可以的)
    在这里插入图片描述
    2.4)名称不能包含空格

在这里插入图片描述
3)xml 中的元素(标签)也 分成 单标签和双标签:
在这里插入图片描述

3.4、xml 属性

在这里插入图片描述

在这里插入图片描述
1)属性必须使用引号引起来,不引会报错示例代码
在这里插入图片描述

3.5、语法规则:

3.5.1)所有 XML 元素都须有关闭标签(也就是闭合)
在这里插入图片描述

3.5.2)XML 标签对大小写敏感
在这里插入图片描述
3.5.3)XML 必须正确地嵌套
在这里插入图片描述
3.5.4)XML 文档必须有根元素
在这里插入图片描述
3.5.5)XML 的属性值须加引号
在这里插入图片描述
3.5.6)XML 中的特殊字符
在这里插入图片描述
3.5.7)文本区域(CDATA 区)
在这里插入图片描述
在这里插入图片描述

2、xml 解析技术介绍

3、dom4j 解析技术(重点*****)

3.1、Dom4j 类库的使用

在这里插入图片描述
解压后:
在这里插入图片描述

3.2、dom4j 目录的介绍:

1)docs 是 文 档 目 录
在这里插入图片描述
2)如何查 Dom4j 的文档
在这里插入图片描述
3)Dom4j 快速入门
在这里插入图片描述
2)lib 目录
在这里插入图片描述
3)src 目录是第三方类库的源码目录:
在这里插入图片描述

3.3、dom4j 编程步骤

3.4、获取 document 对象

复制jar包到创建的lib路径,然后添加到类路径
在这里插入图片描述
待解析的xml文件
在这里插入图片描述

在这里插入图片描述
Book类:
在这里插入图片描述

读取books.xml文件生成book类

package com.atguigu.pojo;

import org.dom4j.Document;
import org.dom4j.io.SAXReader;
import org.junit.Test;

public class Dom4jTest {
    @Test
    public void test1() throws Exception {
        // 第一步,通过创建 SAXReader 对象。来读取 xml 文件,获取 Document 对象
        SAXReader saxReader = new SAXReader();

        Document document = saxReader.read("src/books.xml");
        
        // 第二步,通过 Document 对象。拿到 XML 的根元素对象
        Element root = document.getRootElement();
        // 打印测试
        // Element.asXML() 它将当前元素转换成为 String 对象
        // System.out.println( root.asXML() );
        // 第三步,通过根元素对象。获取所有的 book 标签对象
        // Element.elements(标签名)它可以拿到当前元素下的指定的子元素的集合
        List<Element> books = root.elements("book");
        // 第四小,遍历每个 book 标签对象。然后获取到 book 标签对象内的每一个元素,
        for (Element book : books) {
            // 测试
            // System.out.println(book.asXML());
            // 拿到 book 下面的 name 元素对象
            Element nameElement = book.element("name");
            // 拿到 book 下面的 price 元素对象
            Element priceElement = book.element("price");
            // 拿到 book 下面的 author 元素对象
            Element authorElement = book.element("author");
            // 再通过 getText() 方法拿到起始标签和结束标签之间的文本内容
            System.out.println("书名" + nameElement.getText() + " , 价格:" + priceElement.getText() + ", 作者:" + authorElement.getText());
        }
    }


}

执行结果:
在这里插入图片描述

weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值