1.XML基础:

  XML全称为eXtensible Markup Language;即可扩展标记型语言,同HTML一样使用标签来操作。它的可扩展性体现在标签可以由自己定义,可以是中文标签。

  XML用途:

    同HTML一样可用于显示数据,但是不是XML的主要用途。XML我们多用来存储数据。

  应用:

    1).不同应用之间数据的传输,利于程序之间的维护

    2).用来表示生活中具有层级关系的数据

    3).多用于文件配置

  XML语法:

    1).XML的文档声明:

      创建一个文件,后缀名为.xml

      在写XML之前,首先必须要有一个文档声明,用以表示写的是XML文件的内容。

      格式:   <?xml version="1.0" encoding="GBK"?>

      注意: 文档声明必须放在XML文件的第一行,第一列

      常见属性:

          version: XML的版本(这是使用1.0)

          encoding:XML编码。常见编码:gbk;  utf-8;  iso8859-1;  其中iso8859-1不包含中文

          standalong:是否需要依赖其他文件:yes/no

  XML中文乱码问题的解决:

    在保存XML文件的时候,会以本地默认的编码保存,所以只要在保存的时候编码和设置打开文件的编码一致,就能解决乱码问题。

2.XML元素的定义(标签定义)

  标签有开始就必须要有结束:<person></person>

  如果标签没有内容,可以在标签内结束:<age/>

  标签可以嵌套,但必须合理嵌套:<person><name>roger</name></person>

  一个XML文件中,只能有一个根标签。其他的标签都是这个标签下面的标签。

  值得一提的是:在XML中,空格和换行都会被作为内容来解析:

    下面两端代码含义是不一样的:

       <aa>hello</aa>    与  <aa>

                      hello

                    </aa>

  XML中标签名称的命名规则:

    1).XML严格区分大小写: <q>与<Q>是两个不一样的标签

    2).不能以数字和下划线开头

    3).不能以xml;  XML;  Xml等开头

    4).XML标签中不能包含空格和冒号

    5).可以使用中文

3.XML中属性的定义:

  同HTML一样,可以有属性

  属性定义的要求:

    1).一个标签可以有多个属性

      <person id1="aaa" id2="bbb"></person>

    2).属性名称不能相同

    3).属性名称和属性值之间采用键值对的形式

    4).命名规范同标签的命名规范一致。

4.注释:

  写法:<!--xml的注释-->  注意:注释不能嵌套

5.XML中的特殊字符:

  因为在xml文档中有些字符是特殊的,不能使用它们作为文本数据。例如:不能使用“<”或“>”等字符作为文本数据,所以需要使用转义字符来表示。

  

6.CDATA区

  在CDATA区里的内容会按原格式显示,不需要转义。

  格式:<![CDATA[内容]]>

7.PI指令(处理指令)  (不常用)

  PI指令可以在XML中设置样式

  格式:<?xml-stylesheet type="text/css" href="css的路径''?>

  设置样式只对英文标签起作用。

8.XML的约束:

  XML为什么需要约束?

    因为XML中标签可以自由定义,如<person></person>的XML文件中保存个人基本信息。这时如果在定义一个<cat></cat>虽然并无语法错误,但显然放在person的XML文件中不合适。所以需要约束XML中只能出现的元素。

  XML中常见约束: DTD约束和schema约束

以上就是JavaWeb学习日记第二天内容。

JavaWeb学习日记----XML基础的更多相关文章

  1. JavaWeb学习日记----XML的解析

    XML的解析简介: 在学习JavaScript时,我们用的DOM来解析HEML文档,根据HTML的层级结构在内存中分配一个树形结构,把HTML的标签啊,属性啊和文本之类的都封装成对象. 比如:docu ...

  2. JavaWeb学习日记----表单提交方式

    1.表单提交方式 (1) 使用input控件中的submit提交 代码如下: <!DOCTYPE html> <html lang="en"> <he ...

  3. python学习日记(基础数据类型及其方法01)

    数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...

  4. JavaWeb学习——web.xml文件说明

    JavaWeb学习——web.xml文件说明 摘要:本文主要学习了web.xml文件的作用以及如果配置. 是什么 web.xml文件是用来在JavaWeb项目里面初始化配置信息的,比如:访问的首页.S ...

  5. XXE学习(一)——XML基础

    XXE学习(一)——xml基础 一.XML简介 XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据 ...

  6. .net学习笔记---xml基础知识

    一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...

  7. JavaWeb学习笔记——XML解析

    DOM解析操作 只在跟节点<addresslist>下面建立一个子节点<name> <?xml version="1.0" encoding=&quo ...

  8. JavaWeb学习日记----SAX解析XML

    1.SAX解析XML文档的方式: 与DOM方式解析不同,DOM方式解析是根据XML的层级结构在内存中分配一个树形结构,把xml的标签,属性和文本都封装成对象.优点是可以很方便实现增删改操作.缺点是,如 ...

  9. JavaScripts学习日记——XML DTD Schema

    今日关键词: XML DTD Schema 1.XML 1 XML的概述 1.1 什么是XML XML全称为Extensible Markup Language,意思是可扩展的标记语言.XML语法上和 ...

随机推荐

  1. 架构(四)Git简介,安装以及相关命令SourceTree

    一 Git介绍 1.1 Git是什么? Git是一个分布式版本控制软件: 版本控制:假如开发人员开发了一个a功能,结果项目经理觉得不够需要修改,开发人员又改成了b功能,后来又改成了c功能,但是最终项目 ...

  2. 亲子编程玩Micro:bit-动力小车“麦昆”

    少儿编程之风已经吹进各大城市,编程猫.乐博机器人.童程童美等专业培训机构逐渐进入大家的视野,年龄段已经从K12逐渐降低到幼儿园中班.其实,少儿编程的门槛并不高,它不会让孩子一上手就去接触代码,而是会通 ...

  3. Windows 10 IoT Core 17127 for Insider 版本更新

    昨天,微软发布了Windows 10 IoT Core 17127 for Insider 版本更新,本次更新只修正了一些Bug,没有发布新的特性.相比于17120,修复了一个已知的问题. 一些已知的 ...

  4. 基于TensorFlow的深度学习系列教程 1——Hello World!

    最近看到一份不错的深度学习资源--Stanford中的CS20SI:<TensorFlow for Deep Learning Research>,正好跟着学习一下TensorFlow的基 ...

  5. 面试官问我,Redis分布式锁如何续期?懵了。

    前言 上一篇[面试官问我,使用Dubbo有没有遇到一些坑?我笑了.]之后,又有一位粉丝和我说在面试过程中被虐了.鉴于这位粉丝是之前肥朝的粉丝,而且周一又要开启新一轮的面试,为了回馈他长期以来的支持,所 ...

  6. 技术干货:实时视频直播首屏耗时400ms内的优化实践

    本文由“逆流的鱼yuiop”原创分享于“何俊林”公众号,感谢作者的无私分享. 1.引言 直播行业的竞争越来越激烈,进过2018年这波洗牌后,已经度过了蛮荒暴力期,剩下的都是在不断追求体验.最近正好在做 ...

  7. FFmpeg开发实战(二):FFmpeg 文件操作

    FFmpeg 提供了丰富的API供我们使用,下面我们来讲述一下文件操作相关的API: FFmpeg 删除文件:avpriv_io_delete() FFmpeg 重命名文件:avpriv_io_mov ...

  8. linux下如何把php升级到5.6

    1: 进入终端后查看php版本 php -v 输出可能如下: PHP (cli) (built: Nov ::) Copyright (c) - The PHP Group Zend Engine v ...

  9. JavaScript 基础排序的实现(二)

    继上一篇O(n^2)的排序算法后,这一篇主要记录O(n*logn)的排序算法 1.快排(快速排序) 这一算法的核心思想为,先随机选一个数作为标兵或者说是标记(这个数一般来说选择该无序数组的中间那个元素 ...

  10. Eclipse 中构建 Maven 项目的完整过程 - 动态 Web 项目

    进行以下步骤的前提是你已经安装好本地maven库和eclipse中的maven插件了(有的eclipse中已经集成了maven插件) 一.Maven项目的新建 1.鼠标右键---->New--- ...