1. Dom4Jjava
<students>
<student>
<name>吴飞</name>
<college>java学院</college>
<telephone>62354666</telephone>
<notes>男,1982年生,硕士,现就读于北京邮</notes>
</student> mysql
</students>sql
第一步:建立解析器
SAXReader reader = new SAXReader();
第二步:Document对象:经过解析器read方法获取
Document doc = reader.read("xxxx.xml");
第三步:获取 xml根节点
Element root = doc.getRootElement();
第四步:遍历解析子节点 url
遍历 root根节点下的student子节点
for(Iterator iter = root.elementIterator();iter.hasNext();){
获取 student 节点对象
Element stuElement = (Element)iter.next();
遍历 stuElement 节点下的全部子节点:name,colleage,telephone,notes
for(Iterator innerIter = stuElement.elementIterator();innerIter.hasNext();){
获取 student节点下的子节点对象
Element innerElement = (Element)innerIter.next(); xml
经过 innerElement 的 getName()获取节点名称,getStringValue()获取节点值 对象
innerElement.getName();继承
innerElement.getStringValue();事件
2.SAXelement
建立解析工厂get
SAXParserFactory saxParserFactory = SAXParaserFactory.newInstance();
建立解析器
SAXParser saxParser = saxParserFactory.newSAXParser();
执行parser方法,传入两个参数:xml文件路径、事件处理器
saxParser.parser(“xxxx.xml”, new MyDefaultHander());
(4) 建立一个类 MyDefaultHander(),继承 DefaultHander类,重写三个方
a. startElement 获取开始标签,重要的两个参数说明
qName:把标签名称返回
attributes:返回标签中的属性对象
b. character 获取标签文本内容
c. endElement 获取结束标签
3.Dom4j + xPath
<config>
<database-info>
<driver-name>com.mysql.jdbc.Driver</driver-name>
<url>jdbc:mysql://192.168.7.151:8080/home</url>
<user>root</user>
<password>123</password>
</database-info>
</config>
第一步:经过 SAXReader 获取解析器
SAXReader reader = new SAXReader();
第二步:经过解析器的 read方法获取Document对象
Document doc = reader.read(“sys-config.xml”);
第三步:经过 xpath 语法获取driver-name 节点
Element driverNameElt = doc.selectObject(“/config/database-info/driver-name”);
String driverName= driverNameElt.getStringValue();