XML

XML有什么用:

1.可以用来保存数据

2.可以用来做配置文件

3.数据传输载体

1.文档声明

简单声明,version:解析这个xml的时候,使用什么版本的解析器解析

<? xml version = "1.0" ?>

encoding:解析xml中的文字的时候,使用什么编码来翻译

<? xml version = "1.0" encoding = "gbk" ?>

standlone:no:该文档会依赖关联其他文档  yes:这是一个独立的文档

<? xml version = "1.0" encoding = "gbk" standlone = "no"?>

encoding详解:电脑上存储文件时存储的不是文字,而是文件对应的二进制编码,根据文件使用的编码去解析

默认文件保存的时候使用的是GBK的编码保存

所以要想让我们的xml能够正常的显示中文,有两种解决方法

1.让encoding也是GBK或者gb2312

2. 如果encoding是utf-8,那么保存文件的时候也必须用utf-8

3. 保存的时候见到的ANSI对应的其实是我们的本地编码GBK

为了通用,一般建议使用utf-8

元素定义:

1. > 其实就是里面的标签   <>括起来的都叫元素

成对出现 例如: <stu>  </stu>   

2. 文档声明下来的第一个元素叫做根元素<根标签>

3. 标签里面可以嵌套标签

4. 空标签

既是开始也是结束,一般配合属性来用

5. 标签名字可以自定义

xml元素命名规则:

名称可以含数字,字母以及其他字符

名称不能以数字或者标点符号开始

名称不能以字符"xml"(或者XML,xml)开始

名称不能包含空格

简单元素&复杂元素

简单元素  元素里面包含了普通的文字

复杂元素  元素里面还可以嵌套其他的元素

属性的定义

定义在元素里面 格式:<元素名称 属性名="属性的值"> </元素名称>

注释:与HTML注释一样

结构:<!-- -->

注释不能放置在文档的第一行

CDATA区

非法字符

严格地讲,在xml中,只有 <和&是非法的,省略号和引号,大于号是合法的,但是把它们替换为实体引用是个好习惯

< &lt;

& &amp;

如果某段字符串里面有过多的字符,并且里面包含了类似标签或者关键字的这种文字,不想让xml的解析器去解析,那么可以使用CDATA来包装,不过CDATA一般很少见到,通常在服务器给客户端返回数据的时候

xml解析方法有很多种,常用的有两种:DOM,SAX

针对这两种解析方式,给出的解决方案有哪些?

jaxp

jdom

dom4j  使用比较广泛

element.element("stu") 返回该元素下的第一个stu元素

element.elements()  返回该元素下的所有元素

Dom4j基本用法:

1. 创建SaxReader对象

2. 指定解析的xml

3. 获取根元素

4. 根据根元素获取子元素或者下面的子孙元素

 

Dom4j中xpath的使用

dom4j里面支持xpath的写法,xpath其实是xml的路径语言,支持我们在解析xml的时候,能够快速的定位到具体某一个元素

1. 添加jar包依赖

jaxen-1.1-beta-6.jar

2. 在查找指定节点的时候,根据xpath语法规则来查找

3. 后续的代码和以前的解析代码一样

xml约束

schema是为了替代DTD,但是schema约束文本内容比DTD的内容还要多,所以目前也没有真正意义上替代DTD

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值