• J2EE从入门到入土05.XML配置文件


    目录

    XML介绍

    XML作用

    为什么要学习XML 

    XML元素定义

    DTD简介

    DTD规范

    元素定义

    元素分类

    元素个数的限制

    元素定义的示例

    XML属性定义

    语法

    属性类型

    属性描述

    XML属性定义的示例


    XML介绍

    Extensible Markup Language(可扩展标记语言),简称XML

    可扩展标记语言:

    • 标记,指计算机所能理解的信息符号
    • 通过此种标记,计算机之间可以处理包含各种信息的文章等

    XML 是一种格式,是一种简单的数据存储语言,也是常用的配置文件

    使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,语法格式较严格,虽然可扩展标记语言占用的空间比二进制数据要占用更多的空间,但可扩展标记语言极其简单易于掌握和使用

    XML作用

    • 作为项目或者模板的配置文件
    • 作为网络传输数据的格式(现在已JSON为主).
    • 用来保存数据,而且这些数据具有自我描述性

    为什么要学习XML 

    • 可扩展标记语言极其简单易于掌握和使用
    • 语法格式较严格,是常用的配置文件
    • XML里面的DTD(下面讲了)可以定义规范,作用相当于接口,即只有使用这个规范才可以实现XML的功能

    XML元素定义

    DTD简介

    DTD(文档类型定义)的作用是定义 XML 文档的合法构建模块

    DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用

    DTD的标签:< !DOCTYPE root[ ] >

    DTD规范

    1. <!DOCTYPE NEWSPAPER [
    2. <!ELEMENT NEWSPAPER (ARTICLE+)>
    3. <!ELEMENT ARTICLE (HEADLINE,BYLINE,LEAD,BODY,NOTES)>
    4. <!ELEMENT HEADLINE (#PCDATA)>
    5. <!ELEMENT BYLINE (#PCDATA)>
    6. <!ELEMENT LEAD (#PCDATA)>
    7. <!ELEMENT BODY (#PCDATA)>
    8. <!ELEMENT NOTES (#PCDATA)>
    9. <!ATTLIST ARTICLE AUTHOR CDATA #REQUIRED>
    10. <!ATTLIST ARTICLE EDITOR CDATA #IMPLIED>
    11. <!ATTLIST ARTICLE DATE CDATA #IMPLIED>
    12. <!ATTLIST ARTICLE EDITION CDATA #IMPLIED>
    13. ]>

    元素定义

    元素分类

    1. < !DOCTYPE element-name EMPTY>//空元素
    2. < !DOCTYPE element-name (#PCDATA)>//文本元素
    3. < !DOCTYPE element-name (e1,e2)>//混合元素

    注:空元素指没有标签体的元素(像单标签),如</a>;混合元素指一个元素中有多个不同的元素,如<head> <h1> <sex> </sex> </h1></head>;文本元素则就是可以传入文本类型的标签,如中文、字母、数字等

    元素个数的限制

    • 与:用 .  表示
    • 非:用 | 表示

    次数:

    • 0或1:用 ?表示
    • 0或N:用 * 表示
    • 1或N:用 + 表示

    元素定义的示例

    XML属性定义

    语法

    • < !ATTLIST element-name att_name type desc >

    属性类型

    • ID:写在元素中则元素必须具备ID这个属性
    • ( 男 | 女 ):属性只能写男或者女,写别的报错
    • CDATA:文本属性
    • IDREF:引用别人ID标签的值
    • reference(少用)

    属性描述

    • #REQUIRED:表示必填
    • #IMPLIED:表示非必填
    • '默认值':只有type为男或女类型时,desc才可以使用默认值的方式

    XML属性定义的示例

     

  • 相关阅读:
    编写脚本顺便浅浅学一下乱七八糟的库
    【鸿蒙(HarmonyOS)】List列表、ArkUI资源组数据类型
    微服务之Eureka
    从零开始:集成视频直播美颜SDK的步骤及注意事项
    Sql语句的执行流程
    mysql8离线安装
    C语言Socket编程,实现两个程序间的通信
    【gradle】idea创建的gradle项目每个mudule有多余的iml文件
    买口罩(0-1背包)
    迭代器的介绍
  • 原文地址:https://blog.csdn.net/github_67177094/article/details/125568752