dom4j解析xml文档(-)
2015-01-29 17:48
183 查看
java解析xml文档的开源工具有很多,本文主要使用dom4j解析xml文档,是一个入门示例。
1.maven依赖
4.运行main方法,结果如下
1.maven依赖
<dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</version> </dependency> <dependency> <groupId>jaxen</groupId> <artifactId>jaxen</artifactId> <version>1.1.1</version> </dependency>2.xml示例文件
<?xml version="1.0" encoding="UTF-8"?> <beans> <bean id="bean1" class="cn.edu.hbut.zw.dom4j.class1"></bean> <bean id="bean2" class="cn.edu.hbut.zw.dom4j.class2"></bean> <bean id="bean3" class="cn.edu.hbut.zw.dom4j.class3"></bean> <bean id="bean4"></bean> <bean id="bean5" class="cn.edu.hbut.zw.dom4j.class5"></bean> <bean id="bean6" class="cn.edu.hbut.zw.dom4j.class6"></bean> <bean id="bean7" class="cn.edu.hbut.zw.dom4j.class7"></bean> <bean class="cn.edu.hbut.zw.dom4j.class8"></bean> </beans>3.解析xml文件
public class Dom4jUtil { Map<String,String> beans = new HashMap<String,String>(); //根据路径获取document对象 public Document parse(String xmlPath) throws DocumentException{ SAXReader reader = new SAXReader(); Document document = reader.read(new File(xmlPath)); return document; } @SuppressWarnings("unchecked") public Map<String,String> parseXml(Document document){ Map<String,String> beans = new HashMap<String,String>(); if(document==null){ return null; } //获取根元素beans Element ele = document.getRootElement(); //使用xpath表达式查找节点,此时表示查找的是有id和class属性的bean List<Element> elements = ele.selectNodes("//beans/bean[@id and @class]"); for(Element element:elements){ System.out.println(element.attributeValue("id")+"----"+element.attributeValue("class")); beans.put(element.attributeValue("id"), element.attributeValue("class")); } return beans; } public static void main(String[] args) { Dom4jUtil util = new Dom4jUtil(); //根据类加载器获取xml文件路径 String xmlPath = Dom4jUtil.class.getClassLoader().getResource("applicationContext.xml").getPath();try { Document document = util.parse(xmlPath); util.parseXml(document); } catch (DocumentException e) { e.printStackTrace(); } } }
4.运行main方法,结果如下
bean1----cn.edu.hbut.zw.dom4j.class1 bean2----cn.edu.hbut.zw.dom4j.class2 bean3----cn.edu.hbut.zw.dom4j.class3 bean5----cn.edu.hbut.zw.dom4j.class5 bean6----cn.edu.hbut.zw.dom4j.class6 bean7----cn.edu.hbut.zw.dom4j.class7
相关文章推荐
- DOM4J解析XML文档
- dom4j生成或解析xml文档
- DOM4J解析XML文档、Document对象、节点对象节点对象属性、将文档写入XML文件
- dom4j解析xml文档
- DOM4J生成和解析XML文档
- 使用Dom4j解析XML文档
- dom4j生成或解析xml文档
- DOM4J解析xml文档
- 使用SAX和dom4j解析XML文档
- DOM4J生成和解析XML文档
- DOM4J生成和解析XML文档
- dom4j解析及写入XML文档时的乱码问题
- 使用Dom4j实现对XML文档的解析
- Dom4j解析XML文档
- java中利用dom4j对XML文档的创建、解析、查找、修改、保存等操作。
- dom4j生成XML文档及解析
- Dom4J解析XML文档
- dom4j生成XML文档及解析
- 利用Dom4j解析xml文档
- DOM4J解析XML文档