webservice简单的编写,发布,调用

1.编写webservice

接口

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;

@WebService
public interface MyService {
  @WebMethod
  public int add(@WebParam(name="a")int a, @WebParam(name="b")int b);
}

实现接口

import javax.jws.WebService;
import com.huawei.idp.composer.service.MyService;
@WebService(endpointInterface="com.huawei.idp.composer.service.MyService") public class MyServiceimpl implements MyService{ @Override public int add(int a, int b){ return a + b; } }

2.发布webservice

public static void main(String[] args) {
  String address="http://localhost:8080/webservice/test";
  Endpoint.publish(address, new MyServiceimpl());
  System.out.println("发布成功");
}

在服务器端运行main方法 ”控制台打印出发布webservice成功!
“在浏览器中输入http://localhost:8080/webservice/test?wsdl(注意一定要加wsdl),显示了一个xml,那么我们这个WebService就发布成功了。
 
 
3.调用webservice
  3.1 cmd中输入如下
    wsimport -d C:\Users\Administrator\Desktop\test -keep -verbose http://localhost:8080/webservice/test?wsdl

  3.2 参数说明:

    -d 表示输出的文件夹。文件夹必须事先存在,否则导出失败。

    -keep 表示导出webservice的class文件时是否也导出源码java文件。

    -verbose verbose表示具体信息。

    注:如出现 wsimport不是内部或者外部命令

    尝试如下,再输入上面的wsimport......

    set java_home=D:\java\jdk1.8.0_171  安装JDK的根目录
    回车
    set classpath=%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;
    回车
    set path=%JAVA_HOME%\bin; 
    回车
 
  3.3 新建工程,将C:\Users\Administrator\Desktop\test 文件夹中生产的文件拷贝至项目src
    测试代码

    public static void main(String[] args) {
      MyServiceimplService myserviceImpl = new MyServiceimplService();
      MyService myService = myserviceImpl.getMyServiceimplPort();
      System.out.println(myService.add(1, 2));
    }

 附:
上面发布了webservice,会有个进程一直监听8080,怎么关掉服务。

cmd下,用netstat -a -n -o 命令找出该端口,会显示正在监听(listening),-o参数会显示该连接所属的进程id,

然后去任务管理器,默认是不显示进程id的,设置里调出来,杀掉该进程即可。

转载于:https://www.cnblogs.com/sss-justdDoIt/p/9248452.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值