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:\Users\liqiang>cd Desktop

C:\Users\liqiang\Desktop>wsimport http://127.0.0.1:9999/ws/jobservice?WSDL

C:\Users\liqiang\Desktop>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研发工程师
数据库工程师
前端工程师
测试工程师
运维工程师

带接口的webservice 的发布的更多相关文章

  1. 面向接口的webservice发布方式

    import javax.jws.WebService; /**面向接口的webservice发布方式 */ @WebService public interface JobService { pub ...

  2. .net 在不同情况下调用带soapheader的webservice的方式

    国庆长假到了,本想出去玩玩,无奈自己屌丝一枚,啥都没有,只能自己宅在家里思考思考人生.不过人生还是过于复杂,一时间也想不出个所以然,只能是整理一下在工作中遇到的一些小问题,首先是关于带soaphead ...

  3. webservice第三篇【接口开发webservice、CXF框架使用、IDEA下使用webservice、小例子】

    实现接口的webservice 服务端 import javax.jws.WebService; /**面向接口的webservice发布方式 * * */ @WebService public in ...

  4. webservice的 发布

    webservice的 发布一般都是使用WSDL(web service descriptive language)文件的样式来发布的,在WSDL文件里面,包含这个webservice暴露在外面可供使 ...

  5. CXF集成Spring实现webservice的发布与请求

    CXF集成Spring实现webservice的发布(服务端) 目录结构: 主要代码: package com.cxf.spring.pojo; public class User { int id ...

  6. spring集成环境下的axis webservice的发布,调试

    在spring集成的环境下,无论你是ssh集成,还是ssi集成的情况下,发布webservice往往在调用的时候会出错. 特别是,如果你是这个方式: 将webservice打aar包,放到tomcat ...

  7. 【Java】Java6 WebService的发布

    WebService服务发布往往比较混乱,Axis2的发布形式与XFire发布方式差别很大,而Java6 Web服务的发布与Axis2.XFire的Web服务的发布方式也有着天壤之别,它们之间没有经验 ...

  8. 解决android开发webservice的发布与数据库连接的问题

    由于app后续开发的需要,移植了两次webservice和数据库,遇到了不少问题,也花费了很多时间,实践告诉我要学会寻找问题的根源,这样才能在开发中节省时间,尽快解决问题!好,废话不多说,转入正题…… ...

  9. Java6 WebService的发布(转)

      Java6 WebService的发布   转:http://lavasoft.blog.51cto.com/62575/227988/   WebService服务发布往往比较混乱,Axis2的 ...

随机推荐

  1. vue.js 图片预览

    Vue.js的图片预览的插件还是不少,但是找了半天还是没找到跟现在项目里能用得很顺手的,其实项目里图片预览功能很简单,点击放大,能双指缩放就可以了.部分vue.js的图片预览库都需要把图片资源单独拿出 ...

  2. web前端使用localstorage、sessionstorage、cookie增删获方法

    今天主要的学习内容是cookie与本地储存的知识, 在HTML5中,本地存储是一个window的属性,包括localStorage和sessionStorage,从名字应该可以很清楚的辨认二者的区别, ...

  3. pip3 的安装 同时安装lxml和pygame

    ubuntu18.04中 首先查看自己电脑的python版本,一般都会有2, 和3 python -V python3 -V 查看pip版本 pip -V pip3 -V 现在我们就可以开始安装我们的 ...

  4. android 极光推送 声音与振动 的关闭和开启

    前言:最近刚好在写一些推送方面的东西,又是新手,不断在网上找资料,很少,不过还是找到了一些,反正百度我是再也不想百度了,谷歌一下子就能找到想要的. 废话不多说. 1.主要方法就是如下一个函数 priv ...

  5. HighCharts实现双Y轴

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.c ...

  6. Leetcode 636.函数的独占时间

    函数的独占时间 给出一个非抢占单线程CPU的 n 个函数运行日志,找到函数的独占时间. 每个函数都有一个唯一的 Id,从 0 到 n-1,函数可能会递归调用或者被其他函数调用. 日志是具有以下格式的字 ...

  7. gcc学习记录

    -Wall: 使输出中包含警告信息,提示一些可以避免的错误.如果没有错误,则不会输出信息. -o:后面加上可执行文件的名字.如果不加-o选项,会默认生成a.out可执行文件.举例:gcc -Wall ...

  8. yum 快速安装 Rabbitmq for CentOS6

    1.安装CENTOS6的系统. 2.配置源 ,说明:https://github.com/rabbitmq/erlang-rpm To use Erlang 20.x on CentOS 6: # I ...

  9. 最简单的动态代理实例(spring基于接口代理的AOP原理)

    JDK的动态代理是基于接口的 package com.open.aop; public interface BusinessInterface {     public void processBus ...

  10. 禁用jQuery chosen的选择下拉菜单

    想法是启用被勾掉之后,左侧下拉框禁用.这是chosen()的 disabled之后需要更新一下.就这样,还有别的方法的话请分享,O(∩_∩)O哈哈~