黑马程序员技术交流社区
标题:
[学习交流] 日常笔记
[打印本页]
作者:
Morn明
时间:
2018-12-20 11:06
标题:
[学习交流] 日常笔记
/*
* xml
可扩展性标记语言
(
标签可以自己定义
)
* 1
功能
:
存储数据
* 1,
在配置文件
2,
在网络中传输
* 1.1xml
与
html
区别
* xml
是自定义标签
;html
是预定义标签
* xml
的语法严格
,
必须遵循规则
;html
语法松散
--
就算没有闭合标签等
,
浏览器会自动识别
* xml
是存储数据的
,html
是展示数据的
* 2.
语法
* 1.
基本语法
:
* 1.xml
文档的后缀名
.xml
* 2.
必须以
<?xml version='1.0'?>
开头
,
这句话必须要有且在文档第一行
,
且
xml
不向下兼容
,
所以市面上大多为
1.0
版本
* ,
且
xml
为小写
,(
必须有版本
,
后可加
encode
等属性
)
* 3.
标签必须要正确闭合
* 4.xml
标签名称区分大小写
* 5.
属性值必须用引号括起来
(
不论单双引号
)
* -----
看有无错误可以直接将该文档拖入浏览器中
,
如果显示内容则无误
,
否则会报错
*
* 3.
组成
* 1.
开头文档声明
<?xml version="1.0" encoding="utf-8"?>
* version
:版本号,必须的属性
* encoding
:编码方式。告知解析引擎当前文档使用的字符集,默认值:
ISO-8859-1
* standalone
:是否独立
*
取值:
yes
:不依赖其他文件
no
:依赖其他文件
* 2.
指令
(
了解
)
:结合
css
的
* * <?xml-stylesheet type="text/css" href="a.css" ?>
* 3.
标签:标签名称自定义的
* *
规则:
* *
名称可以包含字母、数字以及其他的字符
(
正则表达式
\w [a-zA-Z0-9_])
* *
名称不能以数字或者标点符号开始
* *
名称不能以字母
xml
(或者
XML
、
Xml
等等)开始
* *
名称不能包含空格
* 4.
属性:
* id
属性值唯一
* 5.
文本:
cdata
区
<![CDATA[]]>
* * CDATA
区:在该区域中的数据会被原样展示
* *
格式:
<![CDATA[
数据
]]>
*
*
★约束
:
规定
xml
文档的书写规范
*
分类
1.DTD
*
引入
:
本地
<!DOCTYPE
根标签名
SYSTEM "
文件位置
(
结束到
dtd
文件名
.dtd)">
*
引入
:
网络
<!DOCTYPE
根标签名
PUBLIC "
文件名称
""
网络路径
">
* <!ELEMENT students (student+) >
* <!ELEMENT student (name,age,sex)>
* <!ELEMENT name (#PCDATA)>
* <!ELEMENT age (#PCDATA)>
* <!ELEMENT sex (#PCDATA)>
* <!ATTLIST student number ID #REQUIRED>
*
对应
* <?xml version="1.0" encoding="utf-8" ?>
* <!DOCTYPE student1 SYSTEM "students.dtd">
* <student1>
* <student number="s11">
* <name>nicai</name>
* <age>2</age>
* <sex>2</sex>
* </student>
* </student1>
* 2.Schema----
本身就是个
xml
文档
,
所以开头就是
<?xml version=1.0"?>
* <students xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
* xmlns="http://www.baidu.com/xml"
* xsi:schemaLocation="http://www.baidu.com/xml student.xsd">
* 1.
填写
xml
文档的根元素
* 2.
引入
xsi
前缀
. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
* 3.
引入
xsd
文件命名空间
. xsi:schemaLocation="http://www.baidu.com/xml student.xsd"
* 4.
为每一个
xsd
约束声明一个前缀
,
作为标识
xmlns="http://www.baidu.com/xml"
*
* *
解析
xml
的方式:
* 1. DOM
:将标记语言文档一次性加载进内存,在内存中形成一颗
dom
树
*
优点:操作方便,可以对文档进行
CRUD
的所有操作
*
缺点:占内存
* 2. SAX
:逐行读取,基于事件驱动的。
*
优点:不占内存。
*
缺点:只能读取,不能增删改
* xml
常见的解析器:
* 1. JAXP
:
sun
公司提供的解析器,支持
dom
和
sax
两种思想
* 2. DOM4J
:一款非常优秀的解析器
* 3. Jsoup
:
jsoup
是一款
Java
的
HTML
解析器,可直接解析某个
URL
地址、
HTML
文本内容。它提供了一套非常省力的
API
,可通
* 4. PULL
:
Android
操作系统内置的解析器,
sax
方式的。
*
* Jsoup
* 1.
导入
jar
包
* 2.
获取
Document
对象
* 3.
获取对应的标签
Element
对象
* 4.
获取数据
* */
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2