国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

給JavaBeans 增加XPath功能

2019-11-17 05:59:26
字體:
來源:轉載
供稿:網友

 


向一個javaBean請求'addressbook[1].state.code'是現在還在使用的和JavaBeans 進行交互的一個通常的方法,但是你現在可以更進一步使用功能更強大的XPath規范。

創建XPath的目的是訪問和修改xml中的數據,但是Apache Jakarta的一個新項目答應你將強大的XPath規范的功能應用到普通的JavaBeans上。

作為一個例子,我們使用具有下面的結構的JavaBean :

Person.name 是一個字符串 String
Person.age 是一個整數
Person.birthtown 是一個Town對象
Person.address 是一個Address 對象的數組
Town.name 是一個字符串
Address.number 是一個字符串
Address.street 是一個字符串
Address.town 是一個Town對象

(為了簡單沒有提供源代碼)

對于給定的Person對象,你可以使用"name"得到對象的名字,你可以使用"birthtown/name"得到出身地的名字,你也可以使用"address[number='21']/town/name"得到和地址(例如21)關聯的城鎮的名字。

除了更強大以外,XPath 和通常的bean符號的主要不同是使用反斜線('/')而不是句點('.')分隔元素,一旦你習慣這個特征就都會變得很簡單。

下面的代碼展示了使用JXPath 將XPath 符號應用到我們的JavaBean 結構是多么的簡單:

import org.apache.commons.jxpath.JXPathContext;
....
Person person = ....;
JXPathContext context = JXPathContext.newContext(person);
System.out.System.out.println(context.getValue("age"));
System.out.println(context.getValue("birthtown/name"));
System.out.println(context.getValue("address[number='21']/street"));
System.out.println(context.getValue("address[number='21']/town/name"));
....
XPath可以用于設置值或者創建beans,當然也可以讀取值,關于XPath和它的JXPath的實現的更多信息請參考JXPath站點 。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 崇阳县| 沂水县| 张掖市| 峨眉山市| 会宁县| 台东市| 革吉县| 谢通门县| 郓城县| 类乌齐县| 宽城| 仁布县| 广平县| 博白县| 武山县| 祁连县| 于都县| 中山市| 万载县| 高尔夫| 资中县| 临澧县| 通化市| 射洪县| 拉萨市| 玉溪市| 沙田区| 辽阳县| 穆棱市| 富裕县| 兴城市| 察哈| 大足县| 石棉县| 农安县| 东源县| 城步| 宁强县| 阿尔山市| 贡山| 怀化市|