dom4j及xpath的使用詳細記載
阿新 • • 發佈:2018-12-09
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="[email protected]"></user>
<user id="2" username="bbb" password="456" email="[email protected]"></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("登陸失敗"); }