详解Java解析XML的四种方法
XML现在已经成为一种通用的数据交换格式,平台的无关性使得很多场合都需要用到XML。本文将详细介绍用Java解析XML的四种方法。
XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object Model),DTD(Document Type Definition),SAX(Simple API for XML),XSD(Xml Schema Definition),XSLT(Extensible Stylesheet Language Transformations),具体可参阅w3c官方网站文档http://www.w3.org获取更多信息。
XML在不同的语言里解析方式都是一样的,只不过实现的语法不同而已。基本的解析方式有两种,一种叫SAX,另一种叫DOM。SAX是基于事件流的解析,DOM是基于XML文档树结构的解析。假设我们XML的内容和结构如下:
<?xml version="1.0" encoding="UTF-8"?>
<employees>
<employee>
<name>ddviplinux</name>
<sex>m</sex>
<age>30</age>
</employee>
</employees>
本文使用JAVA语言来实现DOM与SAX的XML文档生成与解析。
首先定义一个操作XML文档的接口XmlDocument 它定义了XML文档的建立与解析的接口。
package com.alisoft.facepay.framework.bean;
/**
*
* @author hongliang.dinghl
* 定义XML文档建立与解析的接口
*/
public interface XmlDocument {
/**
* 建立XML文档
* @param fileName 文件全路径名称
*/
public void createXml(String fileName);
/**
* 解析XML文档
* @param fileName 文件全路径名称
*/
public void parserXml(String fileName);
}
1.DOM生成和解析XML文档
为 XML 文档的已解析版本定义了一组接口。解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构。优点:整个文档树在内存中,便于操作;支持删除、修改、重新排列等多种功能;缺点:将整个文档调入内存(包括无用的节点),浪费时间和空间;使用场合:一旦解析了文档还需多次访问这些数据;硬件资源充足(内存、CPU)。
package com.alisoft.facepay.framework.bean;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
相关文档:
文章一
文章二
文章三
原文
J2ME开发优化
1、猜测Vector的长度
2、使用局部变量
3、避免字符串比较
4、将变量和方法声明为final和static,以加快访问
5、使用惰性实例化
6、处理outofmemoryError错误
7、使用数组而不是对象
8、倒计至零的迭代循环,因为和零比较将会较快
9、把引用设置为NULL
10、最大限度的 ......
下述十四个技巧,是许多人在大量的数据库分析与设计实践中,逐步总结出来的。对于这些经验的运用,读者不能生帮硬套,死记硬背,而要消化理解,实事求是,灵活掌握。并逐步做到:在应用中发展,在发展中应用。
1. 原始单据与实体之间的关系
  ......
Java性能优化技巧集锦
一、通用篇
1.1 不用new关键词创建类的实例
1.2 使用非阻塞I/O
1.3 慎用异常
1.4 不要重复初始化变量
1.5 尽量指定类的final修饰符
1.6 尽量使用局部变量
1.7
乘法和除法
二、J2EE篇
2.1 使用缓冲标记
2.2 始终通过会话Bean访问实体Bea ......
什么叫多线程?
Java程序通过流控制来执行程序流,程序中单个顺序的流控制称为线程。
线程和进程的异同点在哪里?
相同点:他们一样拥有独立的执行控制,由操作系统负责调度。
不同点:线程没有独立的系统资源,同一进程中的所有线程共享进程的系统资源,如存储空间、磁盘文件、打印机等。
由于各个线程的控制流彼此独 ......