需求:XML为例如以下样式,如今我仅仅想取得timer以下的5000和60000.

解决的方法例如以下:

<?xml version="1.0" encoding="UTF-8"?

>
<we> <message id="1001">
<String>Id</String>
<String>name</String>
<String>sfz</String>
<String>w</String>
</message>
<!-- 定时任务设置 -->
<timer>
<delay>5000</delay>
<period>60000</period>
</timer>
</we>

/**
* 解析指定xml路径下的信息
*
* @param fileName
* xml文件路径
* @param xmlPath
* xml里元素路径
* @return 返回map,如map.get("delay")就可取到以下的5000
* <timer>
<delay>5000</delay>
<period>60000</period>
</timer>
*/
public Map parserXml(String fileName, String xmlPath) {
Document document;
Map map = new HashMap();
try {
document = getDocument(fileName);
List list = document.selectNodes(xmlPath);
for (int i = 0; i < list.size(); i++) {
Element timer = (Element) list.get(i);
for(Iterator j = timer.elementIterator();j.hasNext();){
Element node = (Element) j.next();
//System.out.println(node.getName() + ":" + node.getText());
map.put(node.getName(), node.getText());
}
}
} catch (DocumentException e) {
e.printStackTrace();
}
return map;
} private Document getDocument(String xmlFile) throws DocumentException {
SAXReader reader = new SAXReader();
return reader.read(xmlFile);
}
public static void main(String[] args) {
Dom4jDemo d = new Dom4jDemo();
String relativelyPath = new File(Dom4jDemo.class.getResource("/")
.getPath()).getParent() + File.separator + "src\\sysConfig.xml";
System.out.println(relativelyPath);
// d.createXml(relativelyPath);
/*List list = d.parserXml(relativelyPath);
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}*/
String xmlPath = "/we/timer";
Map map = d.parserXml(relativelyPath, xmlPath);
System.out.println(map.get("delay")); }

dom4j解析xml中指定元素下内容的更多相关文章

  1. Dom4j向XML中指定位置添加、删除、修改节点——(五)

    需求: 在第一本书作者后面增加描述 <描述>好书</描述>  思路:获取书下面下的所有节点(一个list集合),在list集合指定位置添加一个元素(list.add(index ...

  2. java中采用dom4j解析xml文件

    一.前言 在最近的开发中用到了dom4j来解析xml文件,以前听说过来解析xml文件的几种标准方式:但是从来的没有应用过来,所以可以在google中搜索dmo4j解析xml文件的方式,学习一下dom4 ...

  3. 转:在java中使用dom4j解析xml

    JAVA 使用Dom4j 解析XML Java DOM4J Parser - Parse XML Document Dom4j下载及使用Dom4j读写XML简介 在java中使用dom4j解析xml ...

  4. 在java项目中怎样利用Dom4j解析XML文件获取数据

    在曾经的学习.net时常常会遇到利用配置文件来解决项目中一些须要常常变换的数据.比方数据库的连接字符串儿等.这个时候在读取配置文件的时候.我们一般会用到一个雷configuration,通过这个类来进 ...

  5. Dom4j的一个小例子,用于解析xml文件的元素获取方式(转)

    import java.io.File; import java.io.IOException; import javax.xml.parsers.ParserConfigurationExcepti ...

  6. Dom4j的一个小例子,用于解析xml文件的元素获取方式

    import java.io.File; import java.io.IOException; import javax.xml.parsers.ParserConfigurationExcepti ...

  7. 【收藏用】--切勿转载JAVA 使用Dom4j 解析XML

    原帖地址 : http://blog.csdn.NET/yyywyr/article/details/38359049 解析XML的方式有很多,本文介绍使用dom4j解析xml. 1.环境准备 (1) ...

  8. dom4j解析XML的CURD操作

    在开发JavaWeb项目中通常是利用XML配置文件来提高应用程序的访问效率,而在配置XML的同时,更多时候是对XML进行解析. 一.解析XML配置文件有两种机制: DOM和SAX的机制: DOM是将整 ...

  9. dom4j解析xml文档全面介绍

    一.dom4j介绍 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点, ...

随机推荐

  1. ZOJ 1610 间隔染色段树

    要长8000仪表板.间染色的范围,问:最后,能看到的颜色,而且颜色一共有段出现 覆盖段 数据对比水   水可太暴力 段树: #include "stdio.h" #include ...

  2. 免费git服务器以及使用过程中遇到的问题

    1. git rm *,git pull会先git fetch后再git merge,更安全的做法是git fetch修改后再push:git remote rm origin 2. https:// ...

  3. Boost中timer的简易用法

    boost::asio::deadline_timer timer_; timer_(io_service), timer_.expires_from_now(boost::posix_time::s ...

  4. Oracle 最简单的随系统自己主动启动

    Oracle 最简单的随系统自己主动启动 俗话说用户是上帝,他们有时候提出一个问题很的简单,就仅仅须要一句话,一分钟就完事了.可是拿到我们DBA来说,可能至少得半个小时甚至半个月才干满足他的一句话.有 ...

  5. asp.net Form 认证【转】

    第一部分 如何运用 Form 表单认证 一.        新建一个测试项目 为了更好说明,有必要新建一个测试项目(暂且为“FormTest”吧),包含三张页面足矣(Default.aspx.Logi ...

  6. 边坡优化主题5——bzoj 1096 [ZJOI2007]仓库建设 解决问题的方法

    [原标题] 1096: [ZJOI2007]仓库建设 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1998  Solved: 816 [id=10 ...

  7. Hibernate主键生成策略简单总结

    数据库表主键的知识点: Generator 为每个 POJO 的实例提供唯一标识. 一般情况,我们使用"native".class 表示采用由生成器接口net.sf.hiberna ...

  8. PHP图像处理:3D图纸、缩放、回转、剪下、水印(三)

    来源:http://www.ido321.com/887.html 5.PHP对图像的旋转 1: <div> 2: <h4>旋转之前</h4> 3: <img ...

  9. DevExpress控件使用之RichEditControl的使用

    原文:DevExpress控件使用之RichEditControl的使用 做Winform的,我们一般都知道,传统.NET界面有一个RichTextBox控件,这个是一个富文本控件,可以存储图片文字等 ...

  10. log4j 实例 , 浅析

    一.新建log4j.propperties,放在工程的src目录下. #fileAppender log4j.rootCategory = DEBUG,file,consoleAppender log ...