webservice 的简单实现
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 的简单实现的更多相关文章
- [转贴]WebService的简单实现 C++
WebService的简单实现 一.socket主机创建和使用过程 1.socket()//创建套接字 2.Setsockopt()//将套接字属性设置为允许和特定地点绑定 3.Bind()//将套接 ...
- WebService的简单实现
WebService的简单实现 一.socket主机创建和使用过程 1.socket()//创建套接字 2.Setsockopt()//将套接字属性设置为允许和特定地点绑定 3.Bind()//将套接 ...
- webservice Dome--一个webservice的简单小实例
1.理解:webservice就是为了实现不同服务器上不同应用程序的之间的通讯 2.让我们一步一步的来做一个webservice的简单应用 1)新建一个空的web应用程序,在程序上右键,新建项目,选择 ...
- WebService的简单介绍与入门使用
WebService是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些应用程序,用于开发分布式 ...
- 【C#】 创建、部署和调用WebService的简单示例
C# 创建.部署和调用WebService的简单示例 <div class="postBody"> <div id="cnblogs_post_body ...
- C# 创建、部署和调用WebService的简单示例 (转)
C# 创建.部署和调用WebService的简单示例(转) 转自 https://www.cnblogs.com/Brambling/p/7266482.html webservice 可以用于分 ...
- Java WebService 开发简单实例
Web Service 是一种新的web应用程序分支,他们是自包含.自描述.模块化的应用,可以发布.定位.通过web调用.Web Service可以执行从简单的请求到复杂商务处理的任何功能.一旦部署以 ...
- WebService 超简单入门教程(Java)
写在前面的话: 当两个人碰面后,产生了好感,如果需要得到双方的信息,那么双方的交流是必不可少的!应用程序也如此, 各个应用程序之间的交流就需要WebService来作为相互交流的桥梁! 项目目的: 程 ...
- 使用CXF发布WebService服务简单实例
一.说明: 前面介绍了使用axis2来发布Webservice服务,现在介绍一种更popular,更高效的Webservice服务发布技术:CXF Apache CXF = Celtix + XFir ...
- C# WebService的简单和复杂参数类型和结果的JSON格式
Jquery作为一款优秀的JS框架,简单易用的特性就不必说了.在实际的开发过程中,使用JQ的AJAX函数调用WebService 的接口实现AJAX的功能也成了一种比较普遍的技术手段了.WebServ ...
随机推荐
- spyder崩溃修复
实验室突然断电,重启电脑后spyder崩溃 在anaconda命令行中输入命令失败 StackOverflow上找的解决方案,适合win10系统,简单粗暴 在win10搜索里面找,点一下就自动修复了
- linux问题故障
分析问题的方法论 What-现象是什么样的 When-什么时候发生 Why-为什么会发生 Where-哪个地方发生的问 How much-耗费了多少资源 How to do-怎么解决问题 4. cpu ...
- Anaconda下的 Jupyter Notebook 安装 多python环境
装完 Anaconda 会自带一个pyhon环境 也会自带Jupyter Notebook 可以点击开始中的Jupyter Notebook 打开 浏览器 我这里是 3.x 想要装个2.7 的 ...
- 关于页面跳转之后获取不到session数据的问题
暂时的解决方法有两种,亲测有效: 方法一: 将页面跳转方式由a标签改为请求转发request.getRequestDispatcher("stu_list.jsp").forwa ...
- python三大神器===》迭代器
迭代器: 1.认识迭代器 迭代器是访问集合元素的一种方式.迭代器是一个可以记住遍历的位置的对象.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退. 我们怎样才能 ...
- Activity的生命周期及协同作用
生命周期 onCreate:创建Activity的实例对象的方法 onStart:启动当前的activity实例的方法 onResume:如果该方法执行,页面的实例和用户即可以交互 onPause:如 ...
- 关于C++中vector<vector<int> >的使用
1.定义 vector<vector<int>> A;//错误的定义方式 vector<vector<int> > A;//正确的定义方式 2.插入元素 ...
- chromedriver版本问题
最新的chromedriver 66.0.3359.117 的对应chromedriver版本为2.38 http://npm.taobao.org/mirrors/chromedriver/ Web ...
- [Codeforces]1263E Editor
The development of a text editor is a hard problem. You need to implement an extra module for bracke ...
- 解决上传代码到GitHub报错Push rejected: Push to origin/master was rejected
最近在 push 代码到 github 时,IDEA报错 Push rejected: Push to origin/master was rejected 在网友找了一圈,发现都不是想要的答案 于是 ...