Dom4j:Dom for Java,为java操作Dom对象文档节点的jar包
应用:经常用于解析xml,使用xpath对节点进行匹配
常用到的对象:
SAXReader:读取xml文件到Document树结构文件对象。
Document:是一个xml文档对象树,类比Html文档对象。具有跟节点、元素节点、父节点、子节点;属性节点、文本节点、注释节点;有id、class等这些属性。
Element:元素节点。通过Document对象可以查找单个元素,可以对元素节点进行常见的ACID操作。其中查询是最基本的应用,使用对象的方法,配合xPath的路径匹配解析模式
获取dom树的方法:
SAXReader reader = new SAXReader();
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("sys-config.xml");
Document doc = reader.read(in);
//先构建一个SAXReader对象,然后通过主线程去读取xml配置文件转化为输入流,然后根据输入流使用之前的SAXReader对象方法读取生成文档对象树Documnet
读取跟节点的方法:
doc.getRootElement();
获取某个节点的方法:
Element driverNameElt = (Element)doc.selectObject("/config/db-info/driver-name");
Element beanElt=(Element)doc.selectSingleNode("//bean[@id=\""+c.getName()+"\"]");
获取某类节点集合的方法:
List daoFactorylist = doc.selectNodes("/config/dao-factory/*");