zoukankan      html  css  js  c++  java
  • 带接口的webservice 的发布

    1.接口:(打上service注解)

    package ws.qlq.a;
    
    import javax.jws.WebService;
    
    /**
     * 面向接口的webservice发布方式
     * 
     * 
     */
    @WebService
    public interface JobService {
        public String getJob();
    }

    2.实现类(也要打赏注解设置服务端点接口全路径)

    package ws.qlq.a;
    
    
    import javax.jws.WebService;
    
    @WebService(endpointInterface="ws.qlq.a.JobService")//设置服务端点接口 ,指定对外提供服务的接口
    public class JobServiceImpl implements JobService {
    
        @Override
        public String getJob() {
            return "JEE研发工程师|Android研发工程师|数据库工程师|前端工程师|测试工程师|运维工程师";
        }
        public void say(){
            System.out.println("早上好!");
        }
    }

    3.发布service的类

    package ws.qlq.a;
    
    
    import javax.xml.ws.Endpoint;
    
    public class Test {
    
        public static void main(String[] args) {
            JobService jobService=new JobServiceImpl();
            String address="http://127.0.0.1:9999/ws/jobservice";
            Endpoint.publish(address, jobService);
            System.out.println("wsdl地址:"+address+"?WSDL");
    
        }
    
    }

    结果:

    wsdl地址:http://127.0.0.1:9999/ws/jobservice?WSDL

    4.客户端通过wsimport生成本地代理以及打包成jar包

    C:Usersliqiang>cd Desktop

    C:UsersliqiangDesktop>wsimport http://127.0.0.1:9999/ws/jobservice?WSDL

    C:UsersliqiangDesktop>jar -cvf test.jar ./ws    (打包之后名字为test.jar,打包的文件夹为当目录的ws文件夹)
    已添加清单
    正在添加: ws/(输入 = 0) (输出 = 0)(存储了 0%)
    正在添加: ws/qlq/(输入 = 0) (输出 = 0)(存储了 0%)
    正在添加: ws/qlq/a/(输入 = 0) (输出 = 0)(存储了 0%)
    正在添加: ws/qlq/a/GetJob.class(输入 = 411) (输出 = 277)(压缩了 32%)
    正在添加: ws/qlq/a/GetJobResponse.class(输入 = 733) (输出 = 414)(压缩了 43%)
    正在添加: ws/qlq/a/JobService.class(输入 = 772) (输出 = 430)(压缩了 44%)
    正在添加: ws/qlq/a/JobServiceImplService.class(输入 = 2304) (输出 = 1036)(压缩了
     55%)
    正在添加: ws/qlq/a/ObjectFactory.class(输入 = 1495) (输出 = 661)(压缩了 55%)
    正在添加: ws/qlq/a/package-info.class(输入 = 230) (输出 = 184)(压缩了 20%)

    5.客户端测试webservice(将上面打好的jar包加进项目)

    package cn;
    
    import ws.qlq.a.JobService;
    import ws.qlq.a.JobServiceImplService;
    
    public class JobServiceTest {
    
        public static void main(String[] args) {
            JobServiceImplService jobServiceImplService = new JobServiceImplService();
            JobService jobServiceImplPort = jobServiceImplService.getJobServiceImplPort();
            String job = jobServiceImplPort.getJob();
            String [] jobs =job.split("\|");
            for (String s:jobs){
                System.out.println(s);
            }
        }
    }

    JEE研发工程师
    Android研发工程师
    数据库工程师
    前端工程师
    测试工程师
    运维工程师

  • 相关阅读:
    使用jquery.mobile和WebSQL实现记事本功能
    jqprint的网页打印,打印预览可以包含图片
    JDBC--处理Blob
    JDBC--DAO设计模式
    JDBC--使用beanutils工具类操作JavaBean
    JDBC--利用反射及JDBC元数据编写通用的查询方法
    JDBC--PreparedStatement使用
    JDBC--Statement使用
    JDBC--获取数据库连接
    Oracle笔记--PL/SQL(Procedure Language & Structured Query Language)
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/7569181.html
Copyright © 2011-2022 走看看