XML
一.什么是XML
所有Xml都称为可扩展标记语言,意味着可扩展的标记语言。 XMl在语法上类似于HTML,但所有HTML标记都是固定的,而XMl可以自由定义标记。
二. XML的一般用法
用法1 :保存配置文件
用法2 :保存数据
许多APP应用程序使用xml个存储数据,例如使用过的powerdesiner。
使用方法3 :传输数据
我们知道在使用不同语言开发程序的过程中不能直接交流,为了完成不同系统之间的交互,需要借助达成一致的协议。 通过公开web服务来暴露自己的本系统的功能是主流。 外部程序可以使用另一个程序公开的web服务进行访问。 web服务使用soap协议,相互传递的数据是XML格式的文档数据。
三. XML语法
在头上声明XML文档(必填) ) ) ) ) )。
? XML version=' 1.0 ' encoding=' utf-8 ' language=" Java "?
文档呢? xml . 必须开始并位于文档的开头。 不允许其他干扰字符。 文档声明部分只有三个属性:版本、编码和语言。 请注意,其中需要版本。
四.用Dom4J解析XMl文档
理解XML文档结构
XML从根节点开始,每个层次都能抓住树状的节点结构。 它被称为DOM树。
个人资料
数据保存到xml文件后,要使用内部数据,程序需要获取文件内容并分析所需的数据。 使用当前学习的知识,只能使用IO流完成文件的读取,然后通过复杂的判断获取文档中的数据。 在这种常见的文档格式中,一定会有封装有用工具的懒汉。 对于XML文档,有一个名为DOM4J,sax的工具包,使您可以摆脱对复杂XML文档的分析。
Dom解析器方法
介绍dom4j解析器和SAX解析器两种。
Dom4j一次将所有文档读入内存,形成完整的DOCUMENT对象。
优点:元素之间存在结构性关系,可以修改节点的添加、删除。
缺点:文档太大容易导致内存溢出。
SAX:快速读取和分析文档,逐行扫描文档,逐行读取和逐行分析,并采用事件驱动方式进行分析,但只能读取文档,无法修改节点信息。
一般API
//定义用于将文档读入内存的SAXReader
saxreadersaxreader=newsaxreader (;
读取//XML文档并将其组装到文档Document中
文档doc=sa xreader.read (is;
//获取根节点
element rootelement=doc.get rootelement (;
//获取节点的标签名称(tagname ) ) ) ) ) ) ) ) ) ) ) ) )。
string typename=rootelement.getname (;
//获取当前节点的所有子节点
listelementlist=rootelement.elements (;
//从标签名称中获取子节点
elementdefaultconfigele=rootelement.element (default-config );
//读取属性
string property name=ele.attribute value (' name );
//读取节点的文本内容
string property value=ele.gettext (;
//用其他方法读取节点的内容
stringtargeteletext=defaultconfigele.element text (' tebie de ' );
除了数据配置文件外,Xml还经常用于存储javabean和数据字段之间的关系。 此外,在查询数据库时,还可以轻松地将查询的结果节基于Xml文档翻译为java对象。
通过select查询使用xml文档简化字段匹配。