Xpath是专门用来对xml文档中查找信息的语言。利用它可以对xml的元素及属性进行遍历。
dom4j是用来读写xml的api,使用它可以进行比如xml配置文件的读写等....
使用之前先导入两个jar包:dom4j-2.0.2.jar,jaxen-1.1.2.jar
创建两个xml文件.
1:book.xml
<?xml version="1.0" encoding="UTF-8"?>
<书架>
<书>
<书名>java编程思想</书名>
<作者>BruceEckel</作者>
<国家>美国</国家>
<售价>68.0元</售价>
</书>
<书>
<书名>java核心技术</书名>
<作者>CayS.Horstmann</作者>
<国家>X国</国家>
<售价>96.0元</售价>
</书>
</书架>
2:user.xml
<?xml version="1.0" encoding="UTF-8"?>
<users>
<user id="1" username="aaa" password="123" email="aa@sina.com"></user>
<user id="2" username="bbb" password="456" email="bb@sina.com"></user>
</users>
对xml进行简单的处理
SAXReader reader=new SAXReader();
Document document=reader.read(new File("book.xml"));
//获取一个节点元素
String value=document.selectSingleNode("//书名").getText();
System.out.println(value);
//获取所有节点元素
List<Node> values=document.selectNodes("//书名");
System.out.println(values.get(0).getText());
//检测文档是否有匹配的用户名和密码
String username="aaa";
String password="123";
document=reader.read(new File("users.xml"));
//语法:title[@lang='eng'] 选取所有 title 元素,且这些元素拥有值为 eng 的 lang 属性。
Node node=document.selectSingleNode("//user[@username='"+username+"'"+
"and @password='"+password+"']");
if (node!=null) {
System.out.println("登录成功");
}else {
System.out.println("登陆失败");
}