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. 在windows上安装wamp时遇到apache无法启动,图标为橙色

    1.首先测试端口号是否被占用,如果端口号被占用,修改相对应文件的端口号,修改端口号的方法网上很容易搜到. 2.如果端口号没有被占用,cd到httpd.exe目录下,查看错误原因,这里我显示的错误是ht ...

  2. 白话TCP为什么需要进行三次握手

    阅读本文大概需要 2.3 分钟. 作者:雨林 https://www.cnblogs.com/yuilin 首先简单介绍一下TCP三次握手 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次 ...

  3. Django项目配置日志

    LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'formatters': { 'verbose': { 'format': ...

  4. .net core 发布linux报错“The configured user limit (128) on the number of inotify instances has been reached”

    https://stackoverflow.com/questions/45875981/error-while-reading-json-file-in-dotnet-core-the-config ...

  5. 如何把web.xml中的context-param、Servlet、Listener和Filter定义添加到SpringBoot中

    把传统的web项目迁移到SpringBoot中,少不了web.xml中的context-param.Servlet.Filter和Listener等定义的迁移. 对于Servlet.Filter和Li ...

  6. Python学习笔记【第八篇】:Python内置模块

    什么时模块 Python中的模块其实就是XXX.py 文件 模块分类 Python内置模块(标准库) 自定义模块 第三方模块 使用方法 import 模块名 form 模块名 import 方法名 说 ...

  7. [转载]PHP中PSR-[0-4]规范

      PHP是世界上最伟大的语言,这一点是毋庸置疑的吧.哈哈哈哈哈哈 .这个霸气的开头不错!(^__^) 但是正是因为伟大,所以用的人也就多了,人一多,再牛逼再伟大的东西,都会产生问题,逐渐就造成了很多 ...

  8. cryptoJS AES 加解密简单使用

    简单记录一下,前端利用 cryptoJS 如何加解密的.主要是关于 AES 加解密. 需求描述:需要对 url 中的参数进行 AES 解密,然后再把该参数进行 MD5 加密通过接口传递. AES AE ...

  9. AI - 概念(Concepts)

    01 - AI.ML与DL的关系 从涵盖范围上来讲,人工智能(AI)大于机器学习(ML)大于深度学习(DL) 人工智能(AI):能够感知.推理.行动和适应的程序: 机器学习(ML):能够随着数据量的增 ...

  10. 【PHP篇】输出方法

    php开始处加:error_reporting(E_ALL & ~E_NOTICE);  //不打印注意 echo: echo “字符串”;   //也可为单引号 echo $变量名; ech ...