1.什么是webservice:
服务端整出一些资源让客户端访问(获取数据)
一个跨语言、跨平台的规范
2.作用:跨平台调用、跨语言调用、远程调用

3.什么时候使用webservice:
  1.新旧系统之间
  2.不同公司之间:如淘宝与物流的数据交互
  3.一些提供数据的应用:如天气预报,股票行情,手机号码归属地

4.重要术语

wsdl : web service definition language --网络服务定义语言

  一个webservice 对应一个 wsdl 文档
soap :simple object access protocal 简单对象访问协议
  基于http 和xml 的协议,用于web 上交换结构化,包含请求和响应
SEI :WebService EndPoint Interface(终端接口) 
  实现的方法逻辑,使用jdk里面的注解

5. 实现服务端的功能(SEI)

(1)创建接口,对接口及方法进行注解

package com.webservice.service;

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

@WebService
public interface Hello {
    @WebMethod
    String sayHello(String name);
}

(2)实现接口,类需要注解

package com.webservice.service;

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

@WebService
public class HelloImpl implements  Hello {
    public String sayHello(String name) {
        String result="say:"+name;
        System.out.println(result);
        return result;
    }
}

(3)发布接口

package com.webservice.service;

import javax.xml.ws.Endpoint;

public class IssHello {
    public static void  main(String []args){
        String address="http://192.168.1.103:8080/connection/Hello";
        Endpoint.publish(address,new HelloImpl());
        System.out.println("成功发布——————");
    }

}

6.实现客户端的功能(调用服务端的接口,获取返回的参数)

(1)新建一个java项目

(2)借助jdk 的wsimport.exe 工具生成客户端的代码

    在新建的java项目路径下,使用cmd 输入 wsimport  -keep url

    url 对应上面的address并在后面加上?wsdl 即:http://192.168.1.103:8080/connection/Hello?wsdl

    运行后会在项目中生成一系列的文件

    创建方法调用服务端代码

package com.webservice.service.test;

import com.webservice.service.HelloImpl;
import com.webservice.service.HelloImplService;

public class Client {
    public static void main(String[] args) {

        HelloImplService factory=new HelloImplService();
        // hello是一个代理对象
        HelloImpl hello=factory.getHelloImplPort();
        System.out.println(hello.getClass());
        System.out.println(hello.sayHello("成功"));

    }
}

end

webservice 的简单实现的更多相关文章

  1. [转贴]WebService的简单实现 C++

    WebService的简单实现 一.socket主机创建和使用过程 1.socket()//创建套接字 2.Setsockopt()//将套接字属性设置为允许和特定地点绑定 3.Bind()//将套接 ...

  2. WebService的简单实现

    WebService的简单实现 一.socket主机创建和使用过程 1.socket()//创建套接字 2.Setsockopt()//将套接字属性设置为允许和特定地点绑定 3.Bind()//将套接 ...

  3. webservice Dome--一个webservice的简单小实例

    1.理解:webservice就是为了实现不同服务器上不同应用程序的之间的通讯 2.让我们一步一步的来做一个webservice的简单应用 1)新建一个空的web应用程序,在程序上右键,新建项目,选择 ...

  4. WebService的简单介绍与入门使用

    WebService是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些应用程序,用于开发分布式 ...

  5. 【C#】 创建、部署和调用WebService的简单示例

    C# 创建.部署和调用WebService的简单示例 <div class="postBody"> <div id="cnblogs_post_body ...

  6. C# 创建、部署和调用WebService的简单示例 (转)

    C# 创建.部署和调用WebService的简单示例(转)  转自 https://www.cnblogs.com/Brambling/p/7266482.html  webservice 可以用于分 ...

  7. Java WebService 开发简单实例

    Web Service 是一种新的web应用程序分支,他们是自包含.自描述.模块化的应用,可以发布.定位.通过web调用.Web Service可以执行从简单的请求到复杂商务处理的任何功能.一旦部署以 ...

  8. WebService 超简单入门教程(Java)

    写在前面的话: 当两个人碰面后,产生了好感,如果需要得到双方的信息,那么双方的交流是必不可少的!应用程序也如此, 各个应用程序之间的交流就需要WebService来作为相互交流的桥梁! 项目目的: 程 ...

  9. 使用CXF发布WebService服务简单实例

    一.说明: 前面介绍了使用axis2来发布Webservice服务,现在介绍一种更popular,更高效的Webservice服务发布技术:CXF Apache CXF = Celtix + XFir ...

  10. C# WebService的简单和复杂参数类型和结果的JSON格式

    Jquery作为一款优秀的JS框架,简单易用的特性就不必说了.在实际的开发过程中,使用JQ的AJAX函数调用WebService 的接口实现AJAX的功能也成了一种比较普遍的技术手段了.WebServ ...

随机推荐

  1. android数据的四种存储方式之一——SharedPreference

    除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息.其存储位置在/data ...

  2. 安装lnmp1.5到最后出现Error: MySQL install failed的解决方法

    解决方法: mv /usr/bin/cmake /usr/bin/cmake.backup wget http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.g ...

  3. java中栈内存与堆内存(JVM内存模型)

    java中栈内存与堆内存(JVM内存模型) Java中堆内存和栈内存详解1 和 Java中堆内存和栈内存详解2 都粗略讲解了栈内存和堆内存的区别,以及代码中哪些变量存储在堆中.哪些存储在栈中.内存中的 ...

  4. 使用onclick报SyntaxError: identifier starts immediately after numeric literal

    少了‘’ 错误 onclick="onlineWatch(${row.title})" 正确 onclick="onlineWatch('${row.title}')&q ...

  5. 提升Essay写作质量,可从这三个层次入手

    “有针对性”读书对写Essay的产生的帮助是非常大的.由浅显的直接成效,到深度的铺垫积累,阅读一共可分为三个层次: 1读Essay: 2读与写作题材相关的材料: 3多样化阅读. 第一层次:读Essay ...

  6. 最新版本GIT安装

    版本问题,最直接的解决办法就是重新编辑安装git吧: 1. 下载:# wget -O git.zip https://github.com/git/git/archive/master.zip 2. ...

  7. OpenJ_Bailian - 1088 滑雪(记忆化搜索)

    题意:给定一个二维数组,一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小,输出可以滑行的最长区域的长度. 分析:对于每一个点,进行记忆化搜索.若某点可以向四周某几个点滑行,记忆化搜索求出 ...

  8. 实践 Network Policy 【转】

    为了演示 Network Policy,我们先部署一个 httpd 应用,其配置文件 httpd.yaml 为: httpd 有三个副本,通过 NodePort 类型的 Service 对外提供服务. ...

  9. 清北学堂例题 LUOGU2523【HAOI2011】problem c

    题目描述 给n个人安排座位,先给每个人一个1~n的编号,设第i个人的编号为ai(不同人的编号可以相同),接着从第一个人开始,大家依次入座,第i个人来了以后尝试坐到ai,如果ai被占据了,就尝试ai+1 ...

  10. java学习之IO流(学习之旅,一)

    个人在学习IO流的时候看到如下所示java 流类图结构的时候,我的感想是,这么多··处于蒙的状态. Java流类图结构 这么多,没有分类不好学,那我们就慢慢一口一口的吃,这样每天学习一点就好了,其实很 ...