xml入门

介绍和用途
语法规则
语义约束
Java解析xml

xml名称:Extensible Markup Language 可扩展标记语言
编写xml就是编写标签 与html非常类似 .xml
良好的人机可读性

例子; hr.xml

张三
31
178
</ employee >

xml和html比较
两者比较相似,都是编写标签
xml没有预定义标签,html存在大量的预定义标签
xml重在保存和传输数据,html重在显示信息

html

首页

xml用途:
Java程序的配置描述文件
用于保存程序产生的数据

李四 21 177

</ employee >

3、网络之间的传输 xml是标准的数据传输的格式

xml文档结构
第一行必须是xml声明

<?xml version=”1.0” encoding=”UTF-8”?>

有且只有一个根节点
xml书写的规则和html相同

开发第一个xml界面。

xml标签的书写规则
合法标签名
适当的注释和缩进
合理使用属性
特殊字符和CDATA标签
有序的子元素

合法的标签名
标签名要有意义
建议使用英文、小写字母、单词之间 - 进行分隔
建议使用多级标签之间不要存在同名情况。
X
<考试&></考试&> X
X
相册</ shop-cart > 对的

解决方案1:使用实体引用

xml支持的5中实体引用:
< <
> >
& &
' ‘
" “

解决方案2:使用CDATA标签
CDATA标签指的是不应由xml解析器进行解析的文本
从<![CDATA[“…….”]]>

xml语义约束
xml语义约束有2种定义方式:DTD和XML Schema

DTD
Document Type Definition
扩展名:.dtd

利用DTD中的<!ELEMENT>标签,定义xml标签中允许出现的节点及数量,hr.xml
1、<!ELEMENT hr (employee)> 定义hr标签节点下只能出现1个employee节点
2、<!ELEMENT employee (name,age,salary,department)>
文档中可以允许哪些节点出现
3、<!ELEMENT name (#PCDATA)>
定义name标签体只能是纯文本
#PCDATA:纯文本元素

DTD定义节点数量
1、<!ELEMENT hr (employee+)> hr节点下最少出现一个employee子节点
2、<!ELEMENT hr (employee*)> hr节点下可以出现0 。。。。n个 ,可能不出现,也可能出现1万个
3、<!ELEMENT hr (employee?)> 最多出现一个,要么不出现

<!ATTLIST employee no CDATA "">

xml中引用DTD文件

举例子:

XML Schema
XML Schema 比DTD更为复杂,提供更多的功能
XML Schema 提供了数据类型、格式限定、数据范围等属性
是W3C的标准
后缀是.xsd

schema使用比较多,为了后期我们框架部分获取schema的支持

DOM模型
Document object model 文档对象模型
DOM把xml文档作为树进行解析的

Dom4j
是易用的开源的库,用于解析xml文件的
应用于Java平台,性能优异 功能强大

Dom4j将xml视为Document对象

xml标签被dom4j定义为element对象

https://dom4j.git hub.io/

使用Dom4j对xml文件进行更新操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值