2018 10 25練習中dom4j的問題

2021-08-29 23:51:17 字數 1666 閱讀 4180

xpath查詢

以一段xml文件為例項

<?xml version="1.0" encoding="utf-8"?>

>

username

="zhangsan"

password

="123"

/>

username

="lisi"

password

="456"

/>

username

="wangwu"

hobby

="football"

/>

username

="zhaoliu"

age="25"

/>

users

>

xpath路徑表示式

表示式描述nodename

選取此節點的所有子節點

/從根節點中選取

//從文件中的任意節點位置選取

.選取當前節點

…選取當前節點的父節點

@選取屬性例項

路徑表示式

描述users

選取users元素的所有子節點

/users

選取根元素 users

/users/user

選取屬於users 的子元素中的所有 user 元素

//user

選取所有 user 子元素,無論它們在何位置,都選取

/users//user

選取屬於users 的子元素中的所有 user 元素,無論它們在何位置

//@username

選取名為username的所有屬性

帶有謂語的例項

路徑表示式

描述/users/user

選取屬於 users 子元素的第乙個 user 元素

/users/user[last()]

選取屬於 users 子元素的最後乙個 user 元素

/users/user[last()-1]

選取屬於 users 子元素的倒數第二個 user 元素

/users/user[position() < 3]

選取屬於 users 子元素的最前面兩個 user 元素

//user[@username]

選取所有擁有名為 username 的屬性的 user 元素

//user[@username=『zhangsan』]

選取所有擁有名為 username 且其值為"zhangsan" 的屬性的 user 元素

/users/user[age>20]

選取 users 元素的所有擁有名為age 且其值大於20 的屬性的 user 元素

//user[@username]

選取所有擁有名為 username 的屬性的 user 元素。

萬用字元

萬用字元描述

*匹配任何元素節點

@*匹配任何屬性節點

node()

匹配任何型別的節點

帶萬用字元的例項

路徑表示式

描述/users/*

選取 users 元素下的所有子元素。

//*選取文件中的所有元素。

//username[@*]

選取所有帶有屬性的 username 元素。

不知道是Dom4 的Bug不

在struts檔案中都有這麼一段,但是如果你在這個檔案中來讀點東西,apache software foundation dtd struts configuration 1.1 en 如果你在servrlet的初始化的時候來讀這個檔案,假如沒有連網,就讀不了這個檔案,他會造成nested問題。但是...

dom4j中xpath的使用

關鍵字 dom4j xpath 獲取document 查詢element xpath語法 xpath 使用路徑表示式在 xml 文件中選取節點。節點是通過沿著路徑或者 step 來選取的。表示式描述 nodename 選取此節點的所有子節點 從根節點擊取 從匹配選擇的當前節點擊擇文件中的節點,而不考...

dom4j中xpath的使用

獲取document 查詢element xpath語法 xpath 使用路徑表示式在 xml 文件中選取節點。節點是通過沿著路徑或者 step 來選取的。表示式 描述 nodename 選取此節點的所有子節點 從根節點擊取 從匹配選擇的當前節點擊擇文件中的節點,而不考慮它們的位置 選取當前節點 選...