javaxml(javaXML总结)
JAVA如何写XML文件?
import java.io.*;\x0d\x0a \x0d\x0aimport org.dom4j.*;\x0d\x0a import org.dom4j.io.OutputFormat;\x0d\x0a import org.dom4j.io.XMLWriter;\x0d\x0a \x0d\x0apublic class DOM4JTest {\x0d\x0a public static void main(String[] args) {\x0d\x0a Document doc = DocumentHelper.createDocument();\x0d\x0a doc.addProcessingInstruction("xml-stylesheet", "type='text/xsl href='students.xsl'");\x0d\x0a Element root = doc.addElement("students");\x0d\x0a \x0d\x0a Element eltStu1 = root.addElement("student").addAttribute("sn", "01");\x0d\x0a Element eltName1 = eltStu1.addElement("name");\x0d\x0a Element eltAge1 = eltStu1.addElement("age");\x0d\x0a eltName1.setText("张三");\x0d\x0a eltAge1.setText("20");\x0d\x0a \x0d\x0a Element eltStu2 = root.addElement("student").addAttribute("sn", "02");\x0d\x0a Element eltName2 = eltStu2.addElement("name");\x0d\x0a Element eltAge2 = eltStu2.addElement("age");\x0d\x0a eltName2.setText("李四");\x0d\x0a eltAge2.setText("18");\x0d\x0a \x0d\x0a try {\x0d\x0a OutputFormat format = new OutputFormat("\x0d\x0a ", true);\x0d\x0a format.setEncoding("gb2312");\x0d\x0a // 可以把System.out改为你要的流。\x0d\x0a XMLWriter xmlWriter = new XMLWriter(new PrintWriter(System.out), format);\x0d\x0a xmlWriter.write(doc);\x0d\x0a xmlWriter.close();\x0d\x0a } catch (IOException e) {\x0d\x0a e.printStackTrace();\x0d\x0a }\x0d\x0a }\x0d\x0a }
xml在java项目中起到的作用具体是什么?
设计xml的目的是用作数据交换,当然也可以用作保存数据。
xml保存数据具有平台无关,规范化。通过提供方提供的读取程序就可以读取出xml数据。
特点:
xml的特点是具有规范化(需要用到xsd),层次性,一看就懂。
缺点:
一个标签需要一个匹配的结束标签,比较冗余。
其他数据交换格式:
其他数据交换格式有:json、yaml等。
可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。
在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。是Internet环境中跨平台的、依赖于内容的技术,也是当今处理分布式结构信息的有效工具。早在1998年,W3C就发布了XML1.0规范,使用它来简化Internet的文档信息传输。
java解析xml的几种方式哪种最好?
(1)DOM解析
DOM是html和xml的应用程序接口(API),以层次结构(类似于树型)来组织节点和信息片段,映射XML文档的结构,允许获取;
(2)SAX(Simple API for XML)解析
流模型中的"推"模型分析方式。通过事件驱动,每发现一个节点就引发一个事件,事件推给事件处理器,通过回调方法;
(1)、dom解析
dom解析是html和xml的应用程序接口(api) 以层次结构(类似与树形)来组织节点 和信息片段 映射xml文档的结构 允许获取和操作文档的任意部分 是官方标准
(2)、sax解析
流模型中in个的 推 模型 分析方式 通过事件驱动 没发现一个节点就引发一个事件 事件推给事件处理期 遍历回调方法
(3)、stax
流模型中的拉模型分析方式 提供基于指针和基于迭代器两种方式 的支持1.6新特征
(4)、jdom
java特定的文档对象模型 自身不包含解析器 使用sax
(5)、jdom4j
简单易用 采用java集合框架 兵完全支持dom sax 和jaxp