javaWebSerivice学习篇2-WebService的JDK自带的包开发

1.前提准备

  jdk的开发环境必须为1.6以及以上的版本(1.6及以上版本的jdk包含了javax.jws包).

2.创建提供服务的接口以及服务接口的实现类

  在发布webservice时,jvm必须要识别那些发布了那些服务,所以要对服务接口和服务接口实现类进行标识,就需要@WebService,@WebMethod两个注解。

  2.1 服务接口必须加注解@WebService,要提供的服务方法必须加@WebMethod,例子如下:

  @WebService
  public interface IHelloWorld {
    
      @WebMethod
      String helloWorld(String name);
  }

  2.2 服务实现类

    服务类必须加注解@WebService,例子如下:

    @WebService
    public class HelloWorldImp implements IHelloWorld {

        public String helloWorld(String name) {
            return "Hello:"+name;
        }

    }

3. 发布webService服务

  3.1要发布webService服务时,可以用EndPoint类,这个类提供的静态的方法publish(String address,Object serviceObject),

    当我们调用了EndPoint.publish发布了对象之后,那么服务端就会一直接受客户端的请求。

        例子如下:

      String url="http://localhost:8080/HelloworldService";

      IHelloWorld service = new HelloWorldImp();

      EndPoint.publish(url,serice);

  3.2验证WebService是否发布成功,可以在浏览器里面输入:http://localhost:8080/HelloworldService?wsdl观察是否有响应,如果有那就发布成功了。

4 客户端访问

  客户端是通过代理或者存根对象来访问服务对象的。客户端要想获取的代理或存根对象,可以有不同的方式,这里就用jdk的wsimport命令来生成一些代码,这些代码能够为我们提供服务的代理或存根对象。

  4.1.打开cmd,cd 要生成代码的文件夹,运行wsimprot命令,这里要价格keep参数,例如:wsimport -keep http://localhost:8080/HelloworldService?wsdl

  4.2.命令执行完后,把生成的代码拷贝到你的工程下。

  4.3 在生成的代码中有一个类实现了javax.xml.ws.Service。这个类能够为我们提供一个服务端的代理对象。例子中的这个类为HelloWorldImpService.生成代理对象如下:

    HelloWorldImpService service = new HelloWorldImpService();

       HelloWorldImp helloWorld = service.getHelloWorldImpPort();

    System.out.println(helloWorld.helloWorld("张三"));

    /**

    *Hello:张三

    */

  

  

 

转载于:https://www.cnblogs.com/kejian/p/4834121.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值