博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WebService入门实例
阅读量:2347 次
发布时间:2019-05-10

本文共 2104 字,大约阅读时间需要 7 分钟。

       最近接触WebService,听说是一个跨语言,夸操作系统的远程调用。作为一个新手,对各种的概念实在是头大,对于它的什么soup,uddi,wsdl什么的概念的什么东西我们这里就不介绍了,网上有许多,这里我们通过一个实例来初步的认识webservice。

      (1)首先创建一个接口和实现类,注意注解和导的包。

package com.Jevin.webservice.demo1;import javax.jws.WebMethod;@javax.jws.WebServicepublic interface WebService {    @WebMethod    String getAddrByCode(String code);}
package com.Jevin.webservice.demo1.impl;import com.Jevin.webservice.demo1.WebService;@javax.jws.WebServicepublic class WebServiceImpl implements WebService {    @Override    public String getAddrByCode(String code) {        return code+"青阳";    }}

(2)发布你的服务:

package com.Jevin.webservice.demo1;import com.Jevin.webservice.demo1.impl.WebServiceImpl;import javax.xml.ws.Endpoint;public class WebServicePublish {    public static void main(String[] args) {        //url表示你说发布的服务器地址,http://localhost:8080这个必须是有效的ip和port,后面的webservice自己定义的名称        String url = "http://localhost:8080/webservice";        //将你的服务发布在你做指定的url上:        Endpoint.publish(url,new WebServiceImpl());        System.out.println("发布成功!");    }}

(3)启动main方法,在浏览器上输入你所写的url+wsdl,就可访问你的wsdl文件。例如我的是:

 这个就是wsdl文件,至于这个文件是什么意思?怎么解读?这里不做介绍,自己查去。

(4)有了wsdl文件,那么我们又如何调用这个服务呢?首先我们需要用到wsimport这个命令,这是jdk自带的命令:

 然后使用 wsimport -s D:\file\webservice_craft -keep 命令,这里说明一下,这个是wsdl文件的地址,D:\file\webservice_craft这个是你要讲解析的文件的本地路径;

解析的文件 结构只这样的:

(5)然后将这些文件拷贝到ide中的包中,再调用服务:

package com.jevin.webservice.demo1.impl;import java.net.MalformedURLException;public class TestMain {    public static void main(String[] args) throws MalformedURLException {        WebServiceImplService factory = new WebServiceImplService();        WebServiceImpl firstWebService = factory.getWebServiceImplPort();        String addr = firstWebService.getAddrByCode("007");        System.out.println(addr);    }}

运行结果:

================================================================================================

      除了引用到本地本地测试之外,我们还可以借助于一些测试工具测试,非常方便,比如soapUI,官网地址:

       整个soapUI的界面是这样的:

我们点击这里:

然后将你的wsdl地址填写在这:

 然后左边框就出现这样的界面,里面有你的待测试的方法,点击进去:

      在这个界面有你的写的方法,不过是以xml格式呈现的,在<arg0></arg0>标签对中填写你的测试方法参数,然后右边就出现你的返回值<return></return>。

 

 大致上就这些了,这里只谈实战,不谈概念,概念以后整理好了再奉上。。。

转载地址:http://ertvb.baihongyu.com/

你可能感兴趣的文章
现代c++之移动构造, 移动赋值, 拷贝构造, 拷贝赋值
查看>>
计算机视觉实时目标检测 TensorFlow Object Detection API
查看>>
TensorFlow MobileNet
查看>>
MultiModel:跨领域多任务机器学习
查看>>
容器生态全景图
查看>>
OracleDB 12cR2 架构 (强烈推荐)
查看>>
Storm 1.1.0 集群安装
查看>>
图像压缩算法
查看>>
一张图看懂小程序全生态
查看>>
electron开发
查看>>
NodeJS开发c++扩展模块
查看>>
Electron如何调用NodeJS扩展模块
查看>>
Electron使用NodeJS扩展模块调用DLL
查看>>
NodeJS通过ffi调用DLL
查看>>
Hyperledger Fabric 1.0发布:基于区块链的开源分布式账本
查看>>
Electron通过ffi调用DLL
查看>>
Node.js & Electron的扩展模块
查看>>
Mysql semi-sync VS group replication, 谁快?
查看>>
Android Looper Message MessageQueue Handler
查看>>
微信Android模块化架构重构实践
查看>>