【XML入门精要】从零开始的开发之旅

参考文档:XML 教程 (w3school.com.cn)

简介

XML,全称eXtensible Markup Language,即“可扩展标记语言”,是一种用于存储和传输数据的标准格式。它由万维网联盟(W3C)开发,目的是克服HTML(HyperText Markup Language)在表示数据结构和语义上的局限性,提供一种更灵活、更强大的数据描述方式。

为什么需要XML

  1. 两个程序间进行数据通信
  2. 给一台服务器,做一个配置文件,当服务器程序启动时,去读取它应当监听的端 口号、还有连接数据库的用户名和密码
  3. spring 中的 ico 配置文件,beans.xml mybatis XXXMapper.xml tomcat server.xml web.xml mavenpom.xml
  4. 能存储复杂的数据关系

XML技术用于解决什么问题

  • 解决程序间数据传输的问题:=>json

    • 比如qq之间的数据传送,用xml格式来传送数据,具有良好的可读性,可维护性。
  • xml可以做配置文件

    • xml文件做配置文件可以说非常的普遍,比如我们的tomcat服务器的server.xml,web.xml
  • xml可以充当小型的数据库=>程序自己的数据格式存放

    • xml文件做小型数据库,也是不错的选择,我们程序中可能用到的数据,如果放在数据库 中读取不合适(因为你要增加维护数据库工作),可以考虑直接用xm来做小型数据库,而且 直接读取文件显然要比读取数据库快

XML语法

  1. 文档组成

    1. 文档声明

      1. <?xml version="1.0" encoding="utf-8"?>
    2. 元素

      1. 每个XML文档必须有且只有一个根元素。 

      2. 根元素是一个完全包括文档中其他所有元素的元素。 

      3. 根元素的起始标记要放在所有其他元素的起始标记之前。 

      4. 根元素的结束标记要放在所有其他元素的结束标记之后。

      5. 代码示例:

        <?xml version="1.0" encoding="utf-8" ?>
        <!--
        解读
        1. 每个XML文档必须有且只有一个根元素。
        2. 根元素是一个完全包括文档中其他所有元素的元素。
        3. 根元素的起始标记要放在所有其他元素的起始标记之前。
        4. 根元素的结束标记要放在所有其他元素的结束标记之后。
        5. XML 元素指XML文件中出现的标签,一个标签分为开始标签和结束标签,一
        包含标签体:<a>www.sohu.com</a>
        不含标签体的:<a></a>, 简写为:<a/>
        6. 一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许
        交叉嵌套。
        7. 叫法student 元素,节点,标签 -->
        <students>
            <student id="100">
                <name>jack</name>
                <age>10</age>
                <gender></gender>
            </student>
            <student id="200">
                <name>mary</name>
                <age>18</age>
                <gender></gender>
            </student>
            <school>清华大学</school>
            <city/>
        </students>
        
    3. 属性

      1. 属性介绍

        1. <StudentID=“100”>
          TOM
      2. 属性值用双引号(“)或单引号(‘)分隔(如果属性值中有’,用"分隔;有”,用’分隔)

      3. 一个元素可以有多个属性,它的基本格式为:<元素名属性名=“属性值”>

      4. 特定的属性名称在同一个元素标记中只能出现一次

      5. .属性值不能包括&字符

      6. 代码示例:

        <?xml version="1.0" encoding="utf-8" ?>
        <!--
        解读
        1. 属性值用双引号(")或单引号(')分隔(如果属性值中有',用"分隔;有",
        用'分隔)。
        2. 一个元素可以有多个属性,它的基本格式为:<元素名 属性名="属性值">3. 特定的属性名称在同一个元素标记中只能出现一次。
        4. 属性值不能包括&字符。-->
        <students>
            <!--
            举例:
            id='01' 也是正确写法
            如果属性值有" 则使用' 包括属性 比如 id="xxx'yyy"
            如果属性值有' 则使用" 包括属性 比如 id='xxx"yyy'
            属性名在同一个元素标记只能出现一次 <student id="01" id="03"> 是错误的
            属性值不能包括&字符比如:<student id="0&1"> 是错误的-->
            <student id="100">
              <name>jack</name>
              <age>10</age>
              <gender></gender>
            </student>
            <student id="200">
              <name>mary</name>
              <age>18</age>
              <gender></gender>
            </student>
        </students>
        
    4. 注释

      1. 注释内容中不要出现–
      2. 不要把注释放在标记中间;错误写法<Name >TOM
    5. CDATA区

      1. 含义

        1. 有些内容不想让解析引擎执行,而是当作原始内容处理(即当做普通文本),可 以使用CDATA包括起来,CDATA节中的所有字符都会被当作简单文本,而不是XML标记。
      2. 语法

        1. <![CDATA[ 这里可以把你输入的字符原样显示,不会解析 xml ]]>

转义字符

在这里插入图片描述

  • 14
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CongSec

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值