webservice学习随笔(一):简单的webservice实例
一、webService概念简单介绍:
简单来说,webservice就是远程调用技术,也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。
XML:(Extensible Markup Language)扩展型可标记语言。面向短期的临时数据处理、面向万维网络,是Soap的基础。
Soap:(Simple Object Access Protocol)简单对象存取协议。是XML Web Service 的通信协议。当用户通过UDDI找到你的WSDL描述文档后,他通过可以SOAP调用你建立的Web服务中的一个或多个操作。SOAP是XML文档形式的调用方法的规范,它可以支持不同的底层接口,像HTTP(S)或者SMTP。
WSDL:(Web Services Description Language) WSDL 文件是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。
二、实例代码(本实例中不需要导任何jar包,jdk自带包)
新建个java项目(创建java项目可参考:创建一个简单的java项目 )

创建一个接口WebService,一个实现WebServiceImpl,一个主程序WebServicePublish,
package service;
import javax.jws.WebMethod;
public interface WebService {
@WebMethod
public String sayHello(String name);
}
package service; @javax.jws.WebService
public class WebServiceImpl implements WebService { @Override
public String sayHello(String name) {
String returnStr = name + ",你好";
return returnStr;
} }
package service;
import javax.xml.ws.Endpoint;
public class WebServicePublish {
public static void main(String[] args) {
String address="http://localhost:8989/WS_Server/WebService";
Endpoint.publish(address,new WebServiceImpl());
System.out.println("发布成功....");
}
}
注意:一定要注意接口和实现的注解!!!
创建完成后,我们启动主程序,在控制台可以看到 发布成功

然后我们在浏览器访问我们定义的address,记得末尾要加?wsdl

这时候说明服务端服务已经发布成功了,接下来我们创建客户端调用接口
同样,新建一个java项目

接下来这块要注意了,我们打开dos窗口,也就是win+r , 执行cmd

在dos窗口中输入wsimport -s 我们这个项目的src路径 -keep 我们发布的webservice地址
回车后,我们刷新下项目,会发现项目中多了很多自动生成的代码

这时候,我们就可以创建客户端主程序,来调用服务端服务了

package service;
public class WSClient {
public static void main(String[] args) {
WebServiceImplService factory=new WebServiceImplService();
WebServiceImpl wsImpl = factory.getWebServiceImplPort();
String sayHello = wsImpl.sayHello("张三");
System.out.println("调用webservice服务的结果是:"+sayHello);
}
}
运行主程序后,我们可以在控制台可以看到,

说明我们本次webservice服务发布调用成功
webservice学习随笔(一):简单的webservice实例的更多相关文章
- WebService学习--(三)使用JDK开发WebService
一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...
- [置顶]
WebService学习总结(1)——WebService相关概念
一.序言 大家或多或少都听过 WebService(Web服务),有一段时间很多计算机期刊.书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多吹嘘和做广告的成 分.但是不得不承认的是W ...
- WebService学习总结(6)——WebService常用接口
商业和贸易:1.股票行情数据 WEB 服务(支持香港.深圳.上海基金.债券和股票:支持多股票同时查询) Endpoint: http://webservice.webxml.com.cn/WebSer ...
- Axis2 webservice入门--写个简单的webservice
上一篇介绍了webservice开发前的准备.下面开始写webservice.如果不了解axis2请看上一篇,如果是新手:建议一边看一边写代码,自己动手完成这个过程. 一.新建一个web项目 二.新建 ...
- WebService学习总结(5)——WebService常见开发框架比较
在SOA领域,我们认为Web Service是SOA体系的构建单元(building block).对于服务开发人员来说,AXIS和CXF一定都不会陌生.这两个产品都是Apache孵化器下面的Web ...
- WebService学习总结(2)——WebService是什么?
一.WebService是什么? 1. 基于Web的服务:服务器端整出一些资源让客户端应用访问(获取数据) 2. 一个跨语言.跨平台的规范(抽象) 3. 多个跨平台.跨语言的应用间通信整合的方案(实际 ...
- webservice学习总结(一)-- WebService相关概念介绍
一.WebService是什么? 基于Web的服务:服务器端整出一些资源让客户端应用访问(获取数据) 一个跨语言.跨平台的规范(抽象) 多个跨平台.跨语言的应用间通信整合的方案(实际) 二.为什么要用 ...
- JMS学习二(简单的ActiveMQ实例)
下载安装ActiveMQ服务,下载地址当然可以去官网下载 http://activemq.apache.org/download-archives.html ActiveMQ安装很简单,下载解压后到b ...
- linux 学习随笔-shell简单编写
脚本最好都放在/usr/local/sbin中 脚本的执行 sh -x 脚本.sh -x可以查看执行过程 1在脚本中使用变量 使用变量的时候,需要使用$符号: #!/bin/bash ##把命令赋 ...
- 利用Java编写简单的WebService实例-转载
使用Axis编写WebService比较简单,就我的理解,WebService的实现代码和编写Java代码其实没有什么区别,主要是将哪些Java类发布为WebService.下面是一个从编写测试例子到 ...
随机推荐
- gRPC service 和client需要引用的包
gPRC service 在ASP.NET Core中使用 直接引用Grpc.AspNetCore,该包含有Google.Protobuf.Grpc.AspNetCore.Server.ClientF ...
- Java基础——(综合练习)买飞机票和找素数
package com.zhao.test; import java.util.Scanner; public class Test14 { /* 需求:机票价格按照淡季旺季.头等舱和经济舱收费. 输 ...
- SecPoint Port Scanner v4.0
SecPoint Port Scanner v4.0 Usage: portscanner <IP> or <hostname> [options] 选项: -p <st ...
- python菜鸟学习: 8. 集合基础知识
# -*- coding: utf-8 -*-# 列表的特性:1,去重:2.关系测试list1 = [1, 4, 6, 8, 7, 8, 9]# 集合去重list2 = set(list1)print ...
- 医学分割 不确定性 2019 MICCAI
z今天分享一篇发表在MICCAI 2019上的论文: Uncertainty-aware Self-ensembling Model for Semi-supervised 3D Left Atriu ...
- vue后台管理系统——商品管理模块
电商后台管理系统的功能--商品管理模块 商品管理概述 商品管理模块用于维护电商平台的商品信息,包括商品的类型.参数.图片.详情等信息. 通过商品管理模块可以实现商品的添加.修改.展示和删除等功能. 1 ...
- mysql之数据库操作-第一篇
1.数据库的创建 mysql> create database if not exists myTestDB; Query OK, 1 row affected (0.00 sec) 2.查看可 ...
- springboot 整合内存缓存Caffeine
springboot 整合内存缓存Caffeine 1.引jar包 <dependency> <groupId>org.springframework.boot</gro ...
- mongodb---docker
docker pull mongo docker run --name mongodb -p 27017:27017 -v /mydata/mongodb/data:/data/db -d mongo ...
- windows 切换路径