使用JDOM解析xml文档
一、使用JDOOM解析xml文档
准备工作
1.下载JDOM.jar 包
解析代码如下
import org.jdom2.Attribute;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder; import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.List; public class Main { public static void main(String[] args) throws Exception { //创建一个解析器
SAXBuilder builder=new SAXBuilder(); //创建一个文件输入流
InputStream in=new FileInputStream("src/server.xml"); //将流加载到解析器中。
Document document=builder.build(in); //获取文档的根节点
Element rootElement=document.getRootElement(); //将根节点的所有子节点获取放到一个集合中
List<Element> list=rootElement.getChildren(); //循环遍历所有子节点
for(Element element:list){
System.out.println("开始遍历第"+(list.indexOf(element)+1)+"本书======"); //获取所有的属性并遍历输出
List<Attribute> list1=element.getAttributes();
for(Attribute attr:list1){
System.out.println("属性名是"+attr.getName());
System.out.println("属性值是"+attr.getValue());
}
System.out.println("结束遍历第"+(list.indexOf(element)+1)+"本书======");
}
}
}
二、使用DOM4J解析xml文档
准备工作:
1.下载导入DOM4J的jar包,代码如下:
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader; import java.io.File;
import java.util.Iterator;
import java.util.List; public class Main { public static void main(String[] args) throws Exception { //创建一个解析器
SAXReader saxReader=new SAXReader(); //加载文档到dom中,注意是dom4j中的dom
Document document=saxReader.read(new File("src/server.xml")); //获取文档的根节点
Element bookStore=document.getRootElement(); //获取根节点的迭代器
Iterator iter=bookStore.elementIterator(); //迭代根节点下面的子节点
while(iter.hasNext()){
System.out.println("开始遍历谋一本书=========");
Element book=(Element)iter.next(); //获取节点的属性集合
List<Attribute> bookAttr=book.attributes(); //遍历属性集合
for(Attribute attr:bookAttr){
System.out.println("属性名:"+attr.getName()+"====属性值:"+attr.getValue());
} //获取子节点book的子节点迭代器
Iterator iterator=book.elementIterator();
while(iterator.hasNext()){
Element child=(Element)iterator.next();
System.out.println("节点名:"+child.getName()+"==节点值:"+child.getStringValue());
}
System.out.println("结束遍历谋一本书=========");
}
}
}
使用JDOM解析xml文档的更多相关文章
- 使用JDom解析XML文档模拟Spring的配置文件解析
在J2EE项目中可能会涉及到一些框架的使用,最近接触到了SSH,拿Spring来说配置文件的使用是相当重要的,Spring的配置文件是一个xml文件,Spring是如何读取到配置文件并进行依赖注入的呢 ...
- 四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)
众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM.SAX.JDOM和DOM4J 下面首先给出这四种方法的jar包下载地址 DOM:在现在的Java JDK里都自带了,在xml- ...
- 浅谈用java解析xml文档(三)
接上一篇,本文介绍使用JDOM解析xml文档, 首先我们还是应该知道JDOM从何而来,是Breet Mclaughlin和Jason Hunter两大Java高手的创作成果,2000年初, JDOM作 ...
- 四种生成和解析XML文档的方法详解
众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM.SAX.JDOM和DOM4J 下面首先给出这四种方法的jar包下载地址 DOM:在现在的Java JDK里都自带了,在xml- ...
- 大杂烩 -- 四种生成和解析XML文档的方法详解
基础大杂烩 -- 目录 众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM.SAX.JDOM和DOM4J DOM:在现在的Java JDK里都自带了,在xml-apis.jar包 ...
- Java高级特性 第15节 解析XML文档(3) - JDOM和DOM4J技术
一.JDOM解析 特征: 1.仅使用具体类,而不使用接口. 2.API大量使用了Collections类. Jdom由6个包构成: Element类表示XML文档的元素 org.jdom: 解析xml ...
- 浅谈用java解析xml文档(四)
继续接上一文,这一阵子因为公司项目加紧,导致最后一个解析xml文档的方式,还没有总结,下面总结使用dom4J解析xml. DOM4J(Document Object Model for Java) 使 ...
- DOM4J解析XML文档
Tip:DOM4J解析XML文档 Dom4j是一个简单.灵活的开放源代码的库.Dom4j是由早期开发JDOM的人分离出来而后独立开发的.与JDOM不同的是,dom4j使用接口和抽象基类,虽然Dom4j ...
- dom4j解析xml文档全面介绍
一.dom4j介绍 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点, ...
随机推荐
- 20165213 Exp1 PC平台逆向破解
PC平台逆向破解 实验内容 1.了解掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码 NOP:NOP指令即"空指令".执行到NOP指令时,CPU什么也不做,仅仅当做 ...
- 关于oracle 索引,收藏
该篇文章很好,,收藏了.. https://www.cnblogs.com/liangyihui/p/5886619.html oracle 索引建立: create bitmap/UNIQUE i ...
- Java和C++的数组比较
Java:数组的定义:如下两种方式都可以:int array[];int[] array; 注意:数组在定义后,不能直接使用.必须在初始化后才能使用.初始化有两种方式:1.静态初始化:int arra ...
- Python中logging日志模块的使用
参考https://www.cnblogs.com/CJOKER/p/8295272.html
- ACM(图论)——tarjan算法详解
---恢复内容开始--- tarjan算法介绍: 一种由Robert Tarjan提出的求解有向图强连通分量的线性时间的算法.通过变形,其亦可以求解无向图问题 桥: 割点: 连通分量: 适用问题: 求 ...
- numpy.convolve函数用法
函数numpy.convolve(a, v, mode=‘full’),这是numpy函数中的卷积函数库 参数: a:(N,)输入的一维数组 b:(M,)输入的第二个一维数组 mode:{‘full’ ...
- asp.net core web 项目附加进程调试
之前asp.net web项目在部署IIS站点的时候可以直接选择项目目录,不用发布,然后附加进程的时候,找到w3wp.exe开头的进程,再根据用户名找到要附加的进程,就可以附加进程调试了.但asp.n ...
- 通过GPLOT过程制作图形
通过GPLOT过程制作图形 和数据报表一样,图形也是展现数据的重要方法,图形的直观效果是数据报表无法替代的.SAS/GRAPH是SAS进行数据可视化展现的重 要组成部分,具有强大的作图功能.可以展现的 ...
- php获取指定日期,前一天、前一周、前一个月、前一年,后一天,后一周,前一个月,前一年
dump( date( 'Y-m-d', strtotime('2018-10-1 +1 day') ) ); dump( date( 'Y-m-d', strtotime('2018-10-1 +1 ...
- Spring流行的十大理由
Spring大概是每个JAVA程序员都听过的框架,但是它为什么能这么流行? 听到咕泡学院的Tom老师的公开课,下面是他总结的阿里为什么选择Spring的十大理由,我觉得这也是Spring能流行的原因: ...