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. 《HTTP权威指南》6-代理

    Web的中间实体 HTTP的代理服务器既是Web服务器又是Web客户端,它既需要正确地处理从客户端发来的请求和连接,返回响应,有需要向服务器发送请求,并接受响应. 私有和共享代理 代理服务器可以是某个 ...

  2. 使用Spring+MySql实现读写分离(一)关于windows下安装mysql5.6

    前面讲过关于mysql的优化,主要是建表时对于大量数据的表添加索引机制,提高查询效率,以及一些sql语句的简单优化,毕竟我也不是专业的数据库管理员,大牛勿喷. 今天写两章关于javaweb项目中,对于 ...

  3. 轻松读懂IL

    轻松读懂IL先说说学IL有什么用,有人可能觉得这玩意平常写代码又用不上,学了有个卵用.到底有没有卵用呢,暂且也不说什么学了可以看看一些语法糖的实现,或对.net理解更深一点这些虚头巴脑的东西.最重要的 ...

  4. Windows 10 IoT Core 17101 for Insider 版本更新

    除夕夜,微软发布了Windows 10 IoT Core 17101 for Insider 版本更新,本次更新只修正了一些Bug,没有发布新的特性. 已知的问题: F5 driver deploym ...

  5. 小程序上传wx.uploadFile - 小程序请假

    小程序上传wx.uploadFile UploadTask wx.uploadFile(Object object) 将本地资源上传到服务器.客户端发起一个 HTTPS POST 请求,其中 cont ...

  6. HBase相关的一些点

    1.在运行Hbase时,如果遇到出错之后: 可以通过{HBASE_HOME}目录,我的是在/usr/soft/hbase下的logs子目录中的日志文件查看错误原因.2.启动关闭Hadoop和HBase ...

  7. Python find函数用法和概念

    概念: Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返 ...

  8. ubuntu 16.04 清空log文件的方法

    由于ubuntu日志文件syslog 和 kern.log 时刻在增长,一会儿就使得根目录文件夹不够用了,需使用如下命令清理 sudo -i 然后输入密码,执行: echo > /var/log ...

  9. io模块及其API

    模块: io io.StringIO io.BytesIO 所包含API列表: io.StringIO.write: 写入字符 io.StringIO.getvalue: 获取写入的字符 io.Str ...

  10. 部署 HTTPS 访问 ( https:// )

    简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输.身份认证的网络协议,要比http协议安全. http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是4 ...