zoukankan      html  css  js  c++  java
  • webservice的服务端和客户端

    package webservice;
    
    import javax.jws.WebService;
    import javax.xml.ws.Endpoint;
    
    /**
     * Created by Lenovo on 2017/11/23.
     */
    @WebService
    public class Findservice {
        public String transferString(String word){
            return "tansfer"+word;
        }
    
        public static void main(String[] args) {
            Endpoint.publish("http://localhost:9001/Service/Findservice",new Findservice());
            System.out.println("publish success");
        }
    }

    jdk:1.7及以上

    类上添加注解@WebService,类中所有非静态方法都会被发布;

    静态方法和final方法不能被发布;

    方法上加@WebMentod(exclude=true)后,此方法不被发布;

    通过EndPoint(端点服务)发布一个WebService

    http://localhost:9001/Service/Findservice?wsdl:查看是否发布成功

    控制台的红色按钮一直进行中,说明是发布中,将红点结束及停止发布

    package webservice;
    
    import webservice.acceptMsg.*;
    import webservice.acceptMsg.Findservice;
    
    /**
     * Created by Lenovo on 2017/11/23.
     */
    public class AcceptTest {
        public static void main(String[] args) {
            Findservice fs = new FindserviceService().getFindservicePort();
            String s = fs.transferString("33");
            System.out.println(s);
        }
    }

    通过:

    格式:wsimport -s "src目录" -p “生成类所在包名” -keep “wsdl发布地址”

    示例:

    wsimport -s G:\workspace\webService\TheClient\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello?wsdl

    说明:

    1)"src目录"地址不可含空格

    2)“wsdl发布地址”不要漏了“?wsdl”

    生成客户端的java文件(记得加keep,否则生成的不是java文件是class文件)

    最后客户端调用上面的代码 获取发布的方法进行编程

  • 相关阅读:
    第02组 每周小结 (2/3)(组长)
    第02组 每周小结 (1/3)(组长)
    第02组(51)beta冲刺总结
    第02组 Beta冲刺 (5/5)(组长)
    第02组 Beta冲刺 (4/5)(组长)
    第02组 Beta冲刺 (3/5)(组长)
    第02组 Beta冲刺 (2/5)(组长)
    第02组 Beta冲刺 (1/5)(组长)
    软工实践个人总结
    第11组 每周小结 (当前轮次3/3)
  • 原文地址:https://www.cnblogs.com/zyzg/p/7883842.html
Copyright © 2011-2022 走看看