JavaWeb学习日记----XML基础
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基础的更多相关文章
- JavaWeb学习日记----XML的解析
XML的解析简介: 在学习JavaScript时,我们用的DOM来解析HEML文档,根据HTML的层级结构在内存中分配一个树形结构,把HTML的标签啊,属性啊和文本之类的都封装成对象. 比如:docu ...
- JavaWeb学习日记----表单提交方式
1.表单提交方式 (1) 使用input控件中的submit提交 代码如下: <!DOCTYPE html> <html lang="en"> <he ...
- python学习日记(基础数据类型及其方法01)
数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...
- JavaWeb学习——web.xml文件说明
JavaWeb学习——web.xml文件说明 摘要:本文主要学习了web.xml文件的作用以及如果配置. 是什么 web.xml文件是用来在JavaWeb项目里面初始化配置信息的,比如:访问的首页.S ...
- XXE学习(一)——XML基础
XXE学习(一)——xml基础 一.XML简介 XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据 ...
- .net学习笔记---xml基础知识
一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...
- JavaWeb学习笔记——XML解析
DOM解析操作 只在跟节点<addresslist>下面建立一个子节点<name> <?xml version="1.0" encoding=&quo ...
- JavaWeb学习日记----SAX解析XML
1.SAX解析XML文档的方式: 与DOM方式解析不同,DOM方式解析是根据XML的层级结构在内存中分配一个树形结构,把xml的标签,属性和文本都封装成对象.优点是可以很方便实现增删改操作.缺点是,如 ...
- JavaScripts学习日记——XML DTD Schema
今日关键词: XML DTD Schema 1.XML 1 XML的概述 1.1 什么是XML XML全称为Extensible Markup Language,意思是可扩展的标记语言.XML语法上和 ...
随机推荐
- App设计:消息推送和界面路由跳转
概要 app消息推送.显示通知栏,点击跳转页面是很一般的功能了,下面以个推为例演示push集成,消息处理模块及app内部路由模块的简单设计. 推送 推送sdk集成 集成sdk步骤根据文档一步步做就行了 ...
- php安全编程&python测试实例编写
前言 本文首发i春秋论坛. 本篇文章主要分享一个python暴破脚本,该脚本采用optparse模块,支持自定义字典位置:用了多线程(虽然我感觉和单线程速度差不多..是我的错觉还是线程写的不对..求表 ...
- 安全圈玩起了直播,"学霸”带你玩转CTF
[i春秋]安全圈玩起了直播,"学霸”带你玩转CTF 跟着学霸(汪神)打CTF,摸清CTF套路 汪神,是浙江大学电气工程系的“风云人物”,曾因首度破解特斯拉汽车安全系统而名声大噪.本套题目是自 ...
- 【详记MySql问题大全集】一、安装MySql
最近公司要从SqlServer转到MySql,期间在安装环境和数据迁移的过程中,遇到了一些不大不小问题,比如怎么重置密码.怎么设置大小写敏感等等. 这些问题都比较细比较杂,这边解决完可能过几天就忘了, ...
- JavaScript 作用域、命名空间及闭包
变量作用域: 1.一个变量的作用域是程序源代码中定义这个变量的区域 2.在函数内声明的变量是局部变量,它只在该函数及其嵌套作用域里可见(js 函数可嵌套定义):不在任何函数内声明或在函数内不使用 va ...
- 关于PHP中拿到MySQL中数据中的中文在网页上显示为?的解决办法!
问题: 解决方案: 在PHP 代码中 输入 : //$connection 是链接数据库返回的变量名: mysqli_set_charset($connection,'utf8'); 完美解决:
- alert换行
alert( "视频会议系统开启流程 " + String.fromCharCode(13) + "1. 软件下载之后双击安装即可." + String.fr ...
- preg_replace的一些细节
.$pattern是数组,$replace也是数组,则中对应的 元素进行替换 php preg_replace有五个参数,有三个是必须参数 Preg_replace(mixed $pattern, m ...
- java~springboot~h2数据库在单元测试中的使用
单元测试有几点要说的 事实上springboot框架是一个tdd框架,你在进行建立项目时它会同时建立一个单元测试项目,而我们的代码用例可以在这个项目里完成,对于单元测试大叔有以下几点需要说明一下: 单 ...
- Number(),parseInt(),parseFloat(),Math.round(),Math.floor(),Math.ceil()对比横评
首先,这些处理方法可分为三类. 1,只用来处理数字取整问题的:Math.round(),Math.floor(),Math.ceil(): 2,专门用于把字符串转化成数值:parseInt(),par ...