2.使用JDK开发webService

使用jdk开发webService需要注意:jdk版本必须1.6以及1.6以上!

以下webService的组成部分:

  server端和client端,通过服务器端(server)webService发布,使用客户端调用。

   说明:开发中也许只做server端也许只做client端,以下只是模拟程序。

开发步骤:

1.开发server端:

  1.1编写webService编码:

    1.1.1创建一个接口(SEI,webService终端接口,该接口方法供client端调用)

/**webService服务器端接口*/
/**接口和接口实现类添加@WebService注解*/
@WebService
public interface HelloWebService {
    /**接口方法添加@WebMethod注解*/
    /**该方法最终由客户端调用,参数由客户端调用时传入*/
    /**返回的数据返回给客户端*/
    /**
     * @param name 服务器端接收客户端的数据
     * @return 服务器端返回给客户的的信息
     */
    @WebMethod
    public String sayHello(String name);
}

   1.1.2定义HelloWebService接口的实现类

/**SEI(服务器端接口)的实现类*/
/**和父接口一样,需要添加@WebService注解*/
@WebService
public class HelloWebServiceImpl implements HelloWebService {

    @Override
    public String sayHello(String name) {
        return "Hello: "+name;
    }
}

  1.2发布webService,将以上定义暴露出去以便供客户端调用

/**使用Endpoint发布webService*/
public class WebServiceRelease {

    public static void main(String[] args) {
        /**address:客户端调用接口地址*/
        /**helloWebServiceImpl:接口实现类对象*/
        String address = "http://localhost:8080/webService/helloWebService";
        HelloWebServiceImpl helloWebServiceImpl = new HelloWebServiceImpl();
        Endpoint.publish(address, helloWebServiceImpl);
        /**如果发布成功打印以下*/
        System.out.println("发布成功!");
    }
}

  执行程序:

  

2.开发client端:

在开发client端之前,我们可以尝试着使用上方发布的路径访问看看,得出以下结果:

一切正常,开始开发client端

2.1借助jdk的wsimort.exe工具生成客户端代码

  注意:客户端代码生成到client工程下,跟server端是不一样的工程

  2.1.1打开cmd,cd到client工程的src目录下(因为客户端代码要生成到这个路径下),例如我的client工程src路径为:D:\developUtil\workspace\webServiceClient\src,那么就在cmd界面窗口cd D:\developUtil\workspace\webServiceClient\src,按回车,这时src目录为当前路径;

  2.1.2接着继续在cmd窗口执行wsimport -keep http://localhost:8080/webService/helloWebService?wsdl,http://localhost:8080/webService/helloWebService?wsdl为之前发布的address加上?wsdl

  2.1.3刷新工程,查看客户端生成的代码

  

2.2测试程序

从上方的wsdl数据,可以看出HelloWebServiceImplService是主要的实现类,所以创建HelloWebServiceImplService的对象,然后通过HelloWebServiceImplService对象调用上方的wsdl数据中的HelloWebServiceImplPort方法,返回一个接口(实现类对象的引用),再通过该接口变量调用服务器端暴露的方法。

public class FindServerMethod {

    public static void main(String[] args) {
        /**HelloWebServiceImplService*/
        HelloWebServiceImplService factory = new HelloWebServiceImplService();
        HelloWebServiceImpl helloImplPort = factory.getHelloWebServiceImplPort();
        String result = helloImplPort.sayHello("java");
        System.out.println(result);
    }
}
时间: 2024-08-08 01:20:18

2.使用JDK开发webService的相关文章

WebService学习总结(三)——使用JDK开发WebService

WebService学习总结(三)——使用JDK开发WebService一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中)二.使用JDK开发WebService2.1.开发WebService服务器端 1.定义一个interface,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所有方法,如下所示:复制代码 1 package me.g

WebService学习总结(3)——使用java JDK开发WebService

一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发WebService 2.1.开发WebService服务器端 1.定义一个interface,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所有方法,如下所示: 1 package me.gacl.ws; 2 3 import javax.jws.WebMethod

WebService-使用JDK开发WebService

一.使用JDK开发WebService 2.1.开发WebService服务器端 1.定义一个interface,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所有方法,如下所示: 1 package me.gacl.ws; 2 3 import javax.jws.WebMethod; 4 import javax.jws.WebService; 5 6 /** 7 * @author gacl 8 * 定义SEI(WebService EndPoint

WEBSERVICE之JDK开发webservice

WEBSERVICE之JDK开发webservice 一.开发工具与环境 1. jdk1.6版本以上 2 .eclipse4.5版本 二.JDK开发webservice 1.定义一个interface,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所有方法,如下所示: package com.me.ws; import javax.jws.WebMethod;import javax.jws.WebService;/** * * @author Admini

JDK开发WebService

java开发web service最简单的方式是用jdk6自带的支持web service的注解功能. 1.编写代码如下: package net.swiftlet; import javax.jws.WebService; import javax.xml.ws.Endpoint; //targetNamespace的默认值是service类所在包名,也可以设置成发布service的网站域名 @WebService(serviceName = "HelloService", targ

WebService系列二:使用JDK和CXF框架开发WebService

一.使用JDK开发WebService 服务端程序创建: 1.新建一个JDK开发webservice的服务端maven项目JDKWebServiceServer 2. 定义一个接口,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所有方法 1 package com.study.webservice.ws; 2 3 import javax.jws.WebMethod; 4 import javax.jws.WebService; 5 6 /** 7 * 定义

java开发webservice的几种方式(转载)

webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录. 1.Axis2方式 Axis是apache下一个开源的webservice开发组件,出现的算是比较早了,也比较成熟.这里主要介绍Axis+eclipse开发webservice,当然不用eclipse也可以开发和发布webservice,只是用eclipse会比较方便. (1)下载eclipse的Java EE版本 http://www.eclipse.org/downloa

Java开发Webservice的组件

参考:http://bbs.csdn.net/topics/390900831 转自:http://blog.csdn.net/dragoo1/article/details/50759222 1.Axis2 Axis是apache下一个开源的webservice开发组件,出现的算是比较早了,也比较成熟.这里主要介绍Axis+eclipse开发webservice,当然不用eclipse也可以开发和发布webservice,只是用eclipse会比较方便. 2.Apche CXF CXF开发we

Java体系中开发webservice的方式

webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录.1.Axis2Axis是apache下一个开源的webservice开发组件,出现的算是比较早了,也比较成熟.这里主要介绍Axis+eclipse开发webservice,当然不用eclipse也可以开发和发布webservice,只是用eclipse会比较方便. (1)下载eclipse的Java EE版本 (2)下载axis2 (3)下载eclipse的axis2插件Axi