Web Service学习(二)

本文详细介绍了WebService的访问方式,包括get、post和soap,并推荐使用wsimport生成本地代理进行高效访问。同时,文章还讲解了如何通过@webservice注解和Endpoint.publish()发布自己的WebService。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Web Service学习(一)中最后一个例子中,我们用get的方式去访问第三方应用,此外还有post,soap方式。

这些方式都有些缺点:

     发送的参数不方便,比如get方式需要拼接在URL中,post需要一个个set。

     接收的数据格式是xml,我们也需要解析。

所以接下来;介绍一种比较好的访问方式:wsimport

简单的说:就是将第三方应用,生成一个本地代理,这样和调用自己的业务类一样了。

使用这种方式,有两个要求:
      1. jdk的 版本要在 jdk 1.6.21及以上 
      2. 操作系统安装的jdk版本 与 MyEclispe 及 默认指定的版本要一致

生成本地代理方式:

打开cmd   输入 wsimport http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?WSDL 

 

该网址是第三方应用的服务说明的网址

然后在桌面生成第三方应用的jar包,放入自己的项目中,就可以向调用自己的类一样调用第三方应用了。

其中,wsimport 后面可以跟参数
         - d  :指定要输出的文件的位置
         - s  :表示要解析java的源码 ,默认解析出的是class字节码 
         - p  : 指定输出的包名

 

以上是访问别人的webservice

接下来我们定义自己的webservice:

     - 声明 某个业务服务为webservice服务
       通过@webservice 注解来声明
    - 发布webservice服务
       Endpoint.publish()发布
    - 通过wsimport生成本地代理来访问自己发布的webservice
       wsimport

首先自己写个普通类,用@webservice 注解声明,然后通过以下代码发布

public static void main(String[] args) {
		// TODO Auto-generated method stub

		String url = "http://127.0.0.1:9999/webservice/myservice";
		Endpoint.publish(url, new myservice());
	}

之后就可以像前面介绍的,访问自己发布的webservice。

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值