- 2
- 0
- 约8.64千字
- 约 16页
- 2017-11-30 发布于湖北
- 举报
XFire简化Web服务开发
Web服务很难用Java来实现。而如今随着XFire新一代Web服务引擎的发布,这种情况有望出现重大变化。
如果问问.Net开发人员开发Web服务有多难,他们可能会觉得这样的问题很可笑,可能会说所需步骤用不了一分钟。再问问Java开发人员,十有八九会得到全然不同的答复。Web服务在Java领域推出已有五个年头。不过,它仍被认为是比较新的技术之一,主要原因就是Web服务很难用Java来实现。如今随着XFire新一代Web服务引擎的发布,这种情况有望出现重大变化。如果使用XFire,无须另外编写代码,就可以把Java类方法作为Web服务来发布。本文将介绍XFire如何让Web服务开发成为轻而易举的事。
Web服务使我们能够构建分布式系统,在这种环境里面,可通过与平台、语言和实现无关的方式,访问网络上的应用组件。某个应用如何开发、采用哪种语言、或者在哪款操作系统平台上运行,这些都不重要。如果应用作为Web服务存在、旨在解决互操作性问题,那么不管用哪种语言或者平台开发而成,它都能够利用服务。这就是Web服务的主要概念。
为了能够通过与平台和实现无关的方式访问Web服务,软件行业已经就几项技术作为标准达成了一致。其中一些如下:
● XML:可以跨Web服务环境的所有层使用的默认数据格式。
● SOAP:用于封装及交换消息的默认协议。首次引入时,它是简单对象访问协议的缩略语。但如今SOAP被认为是专有名词,因为大多数人现在认识到名称不当:SOAP其实并不是用来访问对象的。另外,它也不再是简单的。
● WSDL(Web服务描述语言 ):描述Web服务的语言。虽然基于XML、能够被人理解,但WSDL主要供机器使用,由客户程序来读取及理解。
表明了所有上述技术在工作环境当中的相互关系。其中,提供者(Provider)是提供服务的应用组件,而请求者(Requester)是使用服务的客户程序。其他许多技术可能会参与这些关系,但该图表明了Web服务环境中不可或缺的核心组件。
XFire是免费、开放源代码的SOAP框架,它不但能够轻而易举地实现这类环境,还能够提供许多Web服务规范确认的高级特性,但目前还没有出现在大多数商用或者??放源代码工具里面。
如果Web应用拥有Java类,又需要它的方法可以作为Web服务来发布,那么如果使用XFire,可能用不着多编写一行Java代码。只要处理部署描述文件(deployment descriptors),就能获得Web服务。我们不妨看一个示例。
简单的Java类
我们的示例是放在Apache Tomcat 5.5.7上的银行业务应用,在J2SE 1.4.2_07环境下运行。我们假定读者朋友已经知道了如何用Java编写Web应用,而且部署到了Apache Tomcat服务器上。我们的Web应用很简单,它只完成一项工作:把资金从一个账户转移到另一个账户。普通的Java类BankingService含有名为transferFunds()的方法,它为我们做这项工作。它需要四个输入参数:String fromAccount、String toAccount、double amount、String currency。代码如下:
package com.mybank.xfire.example;
import java.text.NumberFormat;
import java.text.DecimalFormat;
/** XFire WebServices示例实现类
*/
public class BankingService implements IBankingService {
//默认构造函数
public BankingService(){
}
/** 把资金从一个帐户转移到另一个帐户
*/
public String transferFunds(String fromAccount, String toAccount, double amount, String currency){
String statusMessage = ;
//调用业务对象及其他组件以完成这项工作。
//然后创建状态消息并返回。
try {
NumberFormat formatter = new DecimalFormat(###,###,###,###.00);
statusMessage = COMPLETED: + currency + + formatter.format(amount)+
您可能关注的文档
- PEG6000模拟干旱胁迫对黄瓜幼苗生长的影响.doc
- PD纤维根管桩在残冠修复中的应用.doc
- PI3KAKT信号通路与心力衰竭.doc
- PICKUP项目英国大学继续教育转型的催化剂.doc
- PFNA与DHS治疗股骨粗隆间骨折的比较分析.doc
- PK BAT,运营商大数据其实更有价值.doc
- PIC单片机在电机控制系统的综合应用.doc
- PlanetSide 2技术何以驱动创新.doc
- PLC系统在中央空调中的应用.doc
- PLA―α―细辛脑纳米粒经鼻腔、静脉给药后药物动力学研究.doc
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
原创力文档

文档评论(0)