XML小节

1. xml:可扩展标记语言。xml注重的是存储数据。区别于html
2. xml的语法结构:
   1) 声明:<?xml version="1.0" encoding="UTF-8" ?>
   2) 文档声明(可选):<!DOCTYPE .... "...xxx.dtd">
   3) 元素(标记):<element attname="value">主体内容</element>, <element att="value"/>, <element/>
   4) 注释:<!-- -->
   5) 指令:
3. 格式良好的xml文档:
   1) 只能有一个根元素。
   2) 元素名要合法:
   3) 元素要正确嵌套:
4. 命名空间(名称空间):为了解决元素名或属性名同名冲突问题。
   4) 添加在根元素上:<root xmlns="http://www.tjitcast.com/ns"
                       xmlns:q="http://www.tjitcast.com/q/ns">
                       
   5) 元素通过前缀来使用名称空间:<q:element/>
                  不加前缀的元素表示使用的默认的名称空间。
                  
5. DTD:文档类型定义。用于约束xml结构的一种文档。以.dtd结尾。
  1) xml内部的dtd:
  2) 外部dtd:
  3) 声明元素:<!ELEMENT 元素名  类型 声明>
     a) 类型:#PCDATA, 子元素列表, ID,NMTOKEN...
                       还是可使用通配符:* ? + , () |
     b) 声明:#REQUIRED, #IMPLIED, #EMPTY, #ANY, 默认值, #FIXED 固定值
  4) 声明元素的属性:<!ATTLIST 元素名 属性名 类型>
     a) 类型:CDATA...
  5) 在xml文档中使用<!DOCTYPE..>来引用dtd


6. schema:比dtd更完整的约束xml结构 的一种xml文档。以.xsd结尾。
   1) 简单类型,复合类型。
   2) 在xml文档中通过在根元素中指定名称空间来引用xsd。
  
二、XML的解析器:分析XML的结构并从中获取想要的数据。一般使用Apache组织提供的Xerces,JDK中自带了这个解析器实现。
 1.XML的解析标标准:DOM和SAX
 2.XML的解析技术:
   1) DOM:加载整篇xml文档,在内存中生成dom对象树。特点:便于上下导航查询元素,便于编辑xml;解析速度慢,耗内存。
   2) SAX:基于事件驱动方式的解析。解析xml过程中,是遇到特定的元素时通过回调对应的事件处理方法来完成解析。特点:解析速度快,省内存。无法上下导航查询,不能修改xml。
   3) jdom:使用SAX解析XML文档,生成DOM对象树。
    ★4) dom4j:跟jdom原理类似。更便于使用。API都是封装成针对java集合的操作。
    
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值