webservice 开发小解

这几天需在android上需要通过webservice进行数据的获取,以前虽然知道webservice但是从来没有动手去操作过,这次因为接触到了,所以就尝试去

了解一下webservice的开发过程以及调用过程,写篇博客记录一下。

首先我们应该了解一下什么是webservice,简单来说webservice就是一种客户端与服务器,服务器与服务器之间数据的一种交互方式。他通过一种机器

可以理解的格式标记WSDL(web service description language)来描述要公开的接口,WSDL它是以XML格式来表现的。通过他公开的接口,我们可以

传入一些必要数据来获取我们想要的数据。在传入数据以及获取数据的过程中他又基于了一套协议(SOAP),对如何进行参数传递如果获取结果进行

规范。也就是我们想传入数据给一个公开的接口,那么首先要用SOAP协议将这些数据进行包装,然后将包装后的数据使用HTTP或者TCP或者其他协议

传递给目的机器。然后我们怎样去获取WSDL这样的文件呢?如果你需要将你的接口公布于全世界,那么你就需要在UDDI上进行注册,UDDI是一个基于

XML跨平台的描述规划,可以世界范围内的企业在互联网上发布自己提供的服务。这些东西就构成了webservice了。一上只是浅略的说了一下我对web-

service的理解,还有疑惑的可以自己google,一搜一大把。

下面我们来通过不同的方式来构建webservice,并且去向他获取数据。

一:通过JAX-WS方式来部署webservice 开发环境:MyEclipse8.5,Tomcat6.0.37。

1.通过MyEclipse创建WebServiceProject工程MyService,然后新建一个类MyServiceServer,定义一个方法

package com.lonuery.test;

public class MyServiceServer {

	public String play(String userName){
		return userName + "--创建了第一个WebService工程";
	}
}

2.菜单栏->File->New->other->MyService->Web Services->Web Service


3.点击继续,选项按照上面的选项进行勾选。


输入你要创建webService的类,要输入包名,勾选上WSDL in Project。记住你的Service name 和 Service port。然后点击finish。我们就会看到

在我们之前创建的MyServiceServer类的同一个包下会自动创建一个MyServiceServerDelegate的类,至此webService已经开发并发布完毕。


接下来就是添加一些相关联的包,在MyEclipse中就能够直接关联,右击项目->properties->Java Build Path->Libraries->add Library->

MyEclipse Libraries


接下来就是启动Tomcat,编写调用的客户端。

启动Tomcat:工具栏->点击一个服务器类型的小标志->点击Tomcat 6.x->Start。启动完毕后将这个项目部署到Tomcat中,与console在同一个工具栏中有一个Server

的工具,如果没有,点击Window->Show View 选择Server将其显示出来。然后在Server栏中有一个Tomcat 的标志,右击,选择Add Deployment。会出现一个弹窗

点击Project 选择你所创建的工程,点击finish。这样WebService就算部署完毕了。

编写客户端:

创建一个Java Project:MyServiceProject,创建一个类ClientPlay。然后如上述步骤,在步骤3的时候,我们在创建Web Service project的时候,会看见在MyEclipse

的目录下会有一个My Service Client的目录。点击My Service Client,


点击继续>


在 WSDL URL的选项框中输入 WSDL的地址。这个地址在,我们之前创建的MyService工程->WebRoot->WEB-INF->wsdl 我们可以看见有个叫做

MyServiceServerService.wsdl 的文件,进去查看,找到service的标签

  <service name="MyServiceServerService">
    <port binding="tns:MyServiceServerPortBinding" name="MyServiceServerPort">
      <soap:address location="http://localhost:8080/MyService/MyServiceServerPort"/>
    </port>
  </service>

上面的那个address location地址就是WSDL的地址。将这个地址复制到URL的输入框,点击next,他会在我们的Client工程下自动创建一些的的类。


接下来我们就可以在ClientPlay类中去写调用WebService的方法了:

	public static void main(String[] args) {
		ServerPlayDelegate server = new ServerPlayService().getServerPlayPort();
		
		System.out.println(server.play("那里格朗"));
	}

运行的结果如下:


至此我们的webService创建完毕并且发布出去了,客户端调用webService的例子也成功获取到数据。






 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值