dom4j解析xml
来源:互联网 发布:java中long转换成date 编辑:程序博客网 时间:2024/05/22 05:16
分享一个dom4j解析xml的一个小例子,其实在项目开发中dom4j用的并不多,网上有很多相关的例子,做一个简单的测试:
定义一个xml文件,名称为User.hbm.xml,内容为:
<hibernate-mapping>
<class name="cn.com.gjw.User" table="t_user">
<property name="username"></property>
<property name="password"></property>
</class>
</hibernate-mapping>
简单测试:
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
/**
* @author gjw
* 使用dom4j解析XML
*/
public class XMLTest {
public static void main(String[] args) throws Exception {
//用到的jar包为: dom4j-1.6.1.jar
SAXReader reader = new SAXReader();
Document document = reader.read(new File("User.hbm.xml"));
//获取根节点
Element rootElement = document.getRootElement();
System.out.println(rootElement.getName());
//获取子节点
for(Iterator iterator = rootElement.elementIterator(); iterator.hasNext();) {
Element element = (Element) iterator.next();
System.out.println(element.getName());
//获取子节点对应的属性
for (Iterator iterator2 = element.attributeIterator(); iterator2.hasNext();) {
Attribute attribute = (Attribute) iterator2.next();
System.out.println(attribute.getName() + " = " + attribute.getValue());
}
}
//使用xpath解析 用到的jar包为:jaxen-1.1.6.jar
List<Node> list = document.selectNodes("//hibernate-mapping/class/property");
for (Node node : list) {
System.out.println(node.getName());
//将node节点中名为name的属性打印出来。@代表属性
System.out.println(node.valueOf("@name"));
}
}
}
- 用DOM4J解析XML
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 解析xml之--DOM4J
- dom4j解析XML
- 使用 dom4j 解析 XML
- xml文件解析-DOM4J
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- dom4j解析xml方法
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 使用 dom4j 解析 XML
- 数论-魔幻六位数
- Android 面试题,持续更新!
- Caffe解读(一)
- 九度oj 1124 Digital Root
- 利用简单的过滤器 过滤特殊字符实现 防止XSS攻击
- dom4j解析xml
- ROS中给turtlebot加两个传感器:kinect+hokuyo,进行gazebo仿真 (二)
- uva 10359Tiling
- 学习笔记20170312——JAVA解决农场母牛生baby的问题
- Linux达人养成计划I 笔记
- pycharm编辑器编写Python程序
- Qt 编译时出现“-1: error: LNK2019: unresolved external symbol "public: void __thiscall M”错误
- 《深入浅出Node.js》读书笔记+个人思考(二):异步I/O
- fp in scala 学习随记(1)