给JavaBeans 增加XPath功能

2016-02-19 19:01 9 1 收藏

下面图老师小编跟大家分享一个简单易学的给JavaBeans 增加XPath功能教程,get新技能是需要行动的,喜欢的朋友赶紧收藏起来学习下吧!

【 tulaoshi.com - 编程语言 】

?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)


  向一个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.println(context.getValue("name"));
  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站点 。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

来源:http://www.tulaoshi.com/n/20160219/1619833.html

延伸阅读
标签: Java JAVA基础
  尽管你可以在Java的程序码(scriptlets)中加入大量的代码块,但是,事实上大多数Java代码都应该在可再利用的组件中使用,这些组件叫做JavaBeans。JavaBeans就象Activex控件一样:它们提供了被人们熟知的功能性和再利用的特性。   JavaBean的值通过一组属性的定义而成为可利用的,这些属性提供了访问JavaBean的设置。拿一个人来...
标签: Java JAVA基础
JavaBeans的属性 JavaBeans的属性与一般Java程序中所指的属性,或者说与所有面向对象的程序设计语言中对象的属性是一个概念,在程序中的具体体现就是类中的变量。在JavaBeans设计中,按照属性的不同作用又细分为四类:Simple, Index, Bound与Constrained属性。 1. Simple属性 一个简单属性表示一个伴随有...
本文转自 IBM developerWorks 中国网站 EJB 体系结构的历史和目标 本文概述 Enterprise JavaBeans (EJB) 技术,旨在让读者快速理解基本概念。第 1 部分讲述 EJB 技术的历史和某些目标、优点和技术。为了简洁明了,有选择地讲述EJB 技术的一些要害要素。请注重,虽然 EJB 组件依靠于一些基础的 Java 服务(如 Java T...
Photoshop给美女增加质感肤色技巧 教程介绍一种比较简单的制作质感肤色方法。大致过程:先简单给人物磨皮,然后用反相图层叠加做出褐色肤色,后期调整局部明暗,增强肤色质感即可。 原图: 效果图: 1、用Photoshop打开原图,复制图层,用仿制图章工具磨皮,透明度我用20%。 2、将磨皮后的图层复制一层,执...
标签: Web开发
当我们准备建立一个Web站点时,就必须向域名登记机构申请一个Internet域名,因此,我们通常希望了解自己准备使用的域名是否已经被注册,这时,可以访问NIC站点http://www.nic.net,点击"whois"链接后输入需查询的域名,就可以得到我们需要的结果。 WHOIS服务器为 .com、.net 和 .org 的国际顶级域名的查询返回全部的 whois ...

经验教程

239

收藏

53
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部