jav基础---XML

来源:互联网 发布:德州淘宝村 编辑:程序博客网 时间:2024/05/09 05:50

XML:

可扩展标记语言(extensible Markup Language)

保存数据,用于数据的传递

JAVA中框架的配置文件

*******************************

XML的语法(掌握)

a.xml文件的第一行为声明

     <?xmlversion="" encoding=""?>

     <?xml:声明当前文档为xml文档>

     version:版本号,1.0 ,1.1

     encoding:编码

b.xml文件中总会有一对根元素

c.xml的标记必须有结尾<age></age>或者<info/>

d.xml元素必须有正确的嵌套

e.实体   

     <:&lt;

     >:&gt;

     &:&amp;

     ‘:&apos;

     “:&quot;

f.CDATA区:存储带有特殊字符的文本数据

     <![CDATA[....]]>

     xml文档的解析器:浏览器,myeclipse,xml spy

g.注释

h.xml标记名区分大小写,属性值必须使用“”或‘’

     属性通常需要给属性赋值

满足xml文件语法的要求xml文件,成为格式良好的xml文件

 

2    DTD(Schema)了解(Document Type Definition)

     A(编写)--DTD,Schema-->B(解析,获取数据) 

         DTD相当于协议

DTD作用:限制XML文件的结构

编写DTD,可以在xml文件内部,也可以定义单独的DTD文件

 

DTD声明元素:<!ELEMENT 元素名 类别>

引入DTD

a    导入一定范围内的DTD

<!DOCTYPE 根元素  SYSTEM URL>

b    引入一个公共的DTD

<!DOCTYPE 根元素 PUBLIC "名字"   URL>

 

3    JAVA解析XML(掌握)

a 解析XML,获取数据

b java中的数据写入到XML文件中

 

JAVA中提供两种解析方式

DOM解析  xml中的dom--都可以使用    java:树状结构

SAX解析 

jdom/dom4j

 

 

<!ELEMENT employees(emp*)>//employees根元素有0个或多个emp子元素

<!ELEMENT emp (ename,job,sal)>//emp元素  ename,job,sal是属性

<!ELEMENT ename(#PCDATA)>//ename只含文本

<!ELEMENT job (#PCDATA)>

<!ELEMENT sal (#PCDATA)>

<!ATTLIST ename length CDATA#REQUIRED><!--必须有>

<!ATTLIST sal max CDATA#IMPLIED><!--可以有的>

==============================

java解析xml文件

4种主要的java程序解析XML文件的API

1    DOM:文档对象模型

     DocumentObject Model

     直接构造成树形,无论是否是需要的节点

     关键字:树

     好处:遍历快,修改节点(小文档很快捷)

     坏处:时间长,内存压力大

 

2    SAX:针对XML的简单API

     SimpleAPI for XML

     从头到位直接通过流读过,无法保存节点

     关键字:流

     好处:内存无压力,快

     坏处:不保存节点,无法修改节点

 

3    JDOM

     DOM和SAX两种方式的改进

 

4    DOM4J:DOMfor Java(Log4J   Native2ascii)

 

Element

     element("名称");//指定名字的子元素

     elements("名称");//所有该名字的子元素集合

     elementIterator("名称");//子元素集合的迭代

     elementText("名称");//指定模拟公子的子元素内容

     getText();

0 0
原创粉丝点击