`

一个Jdom用法的简单例子

XML 
阅读更多
import java.io.IOException;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;

/**
 * 
 *  在实际的开发中经常用到一个特殊的信息,这些信息的值很少需要更新,例如一些配
 *  置文件,当整个项目开始运行之后,就会很少需要改动,这样的信息如果存放在数据
 *  库中存取和修改都是比较麻烦的,另一方面,由于这样的信息的数据量比较小,所以
 *  没有必要专门建立一个表来存放该信息,这时候xml文件就可以派上用场了,至于xml
 *  的有点和基本格式就不多说了,这里只是简单说一下怎样将xml文件的信息解析出来。
 *  
 *  现在有一个简单的名为personal.xml文件,内容如下:
 * <?xml version="1.0" encoding="UTF-8"?> 
 * <Person>
 *   <name>estone</name> 
 *   <birth>85/02/03</birth> 
 *   <lover>myself</lover>
 * 
 *   <name>estone's lover</name> 
 *   <birth>xx/xx/xx</birth>
 *   <lover>estone</lover>
 * </Person>
 * 
 * 这时候我们需要将<Person>根目录下的所有元素都要解析出来,这时候我们可以使用一个
 * java的xml解析工具来实现。具体的代码如下:
 * */


/**
 *  功能描述:Jdom解析XML文件示例
 * 
 *  @author estone
 *  @version final
 * */
public class JdomDemo {
	
	/**
	 * 该文件存放在D盘根目录下。注意此处路径的写<br>
	 * 法"\\",因为一个"\"是转义字符,"\\"在程序中转<br>
	 * 义成我们常用的路径表示形式"\"。<br>
	 * */
	public static String path = "D:\\personal.xml";
	
	/**
	 *   功能描述:将Personal.xml中所有元素的值都打印出来
	 * */ 
	public static boolean printlnPersonContent() {

		/* 采用默认解析方式 */
		SAXBuilder builder = new SAXBuilder(false);
		try {
			Document xml = builder.build(path);// 获取文档内容
			Element root = xml.getRootElement();// 获取文档的根元素
			List nameList = root.getChildren("name");// 获取根目录下的所有为name的子元素
			List birthList = root.getChildren("birth");// 获取根目录下的所有为name的子元素
			List loverList = root.getChildren("lover");// 获取根目录下的所有为name的子元素
			
			System.out.println();
			System.out.println("----------------personal.xml----------------");
			System.out.println();
			for(int i =0;i<nameList.size();i++){
	System.out.println(" 元素 name 的值为  "+((Element)nameList.get(i)).getText());
	System.out.println(" 元素 birth 的值为  "+((Element)birthList.get(i)).getText());
	System.out.println("  元素 lover 的值为  "+((Element)loverList.get(i)).getText());
	System.out.println();
			}

		} catch (JDOMException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return false;
	}

	public static void main(String[] args) throws Exception {
		printlnPersonContent();
	}
}

 

分享到:
评论

相关推荐

    JDOM(java)使用详解及实例

    JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...

    java使用Jdom实现xml文件写入操作实例

    主要介绍了java使用Jdom实现xml文件写入操作的方法,以完整实例形式分析了Jdom针对XML文件写入操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    JDom使用详解.doc

    关于XML中DOM解析的主要方法.其中有相关例子的说明。

    java源码包---java 源码 大量 实例

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    h_JAVA 2应用编程150例.rar

    实例74 实现一个简单的代理服务器 246 实例75 C/S结构的分布式运算 248 第7章 Java B/S结构编程 253 实例76 简单的Servlet程序 254 实例77 简单的留言簿 256 实例78 JSP+Java Bean的计数器 258 实例79 数据库查询 ...

    JAVA 范例大全 光盘 资源

    实例149 一个简单的加密和解密程序—凯撒密码 445 实例150 创建对称密钥 447 实例151 CBC方式的加密 448 实例152 CBC方式的解密 450 实例153 计算消息摘要 451 实例154 使用消息摘要保存口令 452 实例155 使用...

    java源码包2

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 ...

    java源码包3

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 ...

    java源码包4

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 ...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Tcp服务端与客户端的JAVA实例源代码 2个目标文件 摘要:Java源码,文件操作,TCP,服务器 Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Tcp服务端与客户端的JAVA实例源代码 2个目标文件 摘要:Java源码,文件操作,TCP,服务器 Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    18.2 一个简单的标签文件 551 18.3 标签文件的隐含对象 554 18.4 标签文件的指令 555 18.4.1 tag指令 555 18.4.2 attribute指令 556 18.4.3 variable指令 557 18.5 标签文件实例讲解 558 18.5.1 实例一:...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    18.2 一个简单的标签文件 551 18.3 标签文件的隐含对象 554 18.4 标签文件的指令 555 18.4.1 tag指令 555 18.4.2 attribute指令 556 18.4.3 variable指令 557 18.5 标签文件实例讲解 558 18.5.1 实例一:...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    18.2 一个简单的标签文件 551 18.3 标签文件的隐含对象 554 18.4 标签文件的指令 555 18.4.1 tag指令 555 18.4.2 attribute指令 556 18.4.3 variable指令 557 18.5 标签文件实例讲解 558 18.5.1 实例一:...

Global site tag (gtag.js) - Google Analytics