webService的介绍及项目应用

1、Web service是什么?

web服务:服务器端整出一些资源可以让客户端应用访问(获取数据)。

2、为什么要用Web service?

web service能解决:
跨平台调用
跨语言调用
远程调用

3、什么时候使用webservice?

同一家公司的新旧应用

不同公司的应用之间

4、如何做webservice的开发?

服务端(处理客户端应用的请求,执行业务逻辑,提供数据)

客户端(发送请求,获取数据)

5、几个常用的

WSDL:web service definition language

对应一种类型的文件(.wsdl),一个webservice对应一个唯一的wsdl文档

定义了webservice的服务端与客户端应用交互传递请求和响应数据的格式和方式

SOAP:simple object access protocal

http+xml片段

soap消息:请求消息和响应消息

它依赖于wsdl文档的定义

SEI:service endpoint interface

webservice 的终端接口,就是服务端用来处理请求的接口

CXF:celtix and xfire

一个apache的webservice框架

 

使用MyEclipse创建WebService简单服务端和客户端

1.创建 WebService 简单服务端(登录的例子)

1).新建一个 Web Service Project

File---New--- Web Service Project(或点击快捷键中的new Web Service)

 

2)详细登陆代码请见链接 https://code.csdn.net/snippets/1890900

3)新建一个测试类DemoTest.java

package cn.demo.test;
import javax.xml.ws.Endpoint;
import cn.demo.service.impl.LoginServiceImpl;
public class DemoTest {
public static void main(String[] args) {
Endpoint.publish("http://localhost:8992/WebService/LoginService", new LoginServiceImpl());
System.out.println("SebService 发布成功 !");
}

}

4)将服务端应用部署,进行测试

首先在DemoTest.java文件中右击运行(Run As)---Java Application,在控制台可以看到“SebService 发布成功 !”。

部署服务端,在浏览器输入http://localhost:8992/WebService/LoginService?wsdl 查看下是否有wsdl文件

5 )或者可以简单的测试下服务端

 

点击按钮---Web Services Explore----点击右方(WSDL page)----点击

---在框框里输入 http://localhost:8992/WebService/LoginService?wsdl,尝试进入方法,输入相应的值,
测试下。

2.创建客户端(部分代码根据服务端生成的)
1)点击 的new webservice client
---选择相应服务端的项目
---输入wsdl url(记得加上wsdl)
注意:Service Definition中的两种方式WSDL File和WSDL URL。
wsdl file方式:是在浏览器中打开服务端路径展示方法信息,右键另存为wsdl文件,在“wsdl file”后输入此文件的路径引入生成webservice方法;
wsdl url方式:是在“wsdl url”后直接输入数据服务端开放的地址来引入生成webservice方法。
一般不建议使用wsdl file方式,要注意wsdl文件的管理,会稍有麻烦!!

----选下java package(事先创建好包----放根据服务端自动生成的一些java代码)
2)测试客户端

public class ClientTest {
public static void main(String[] args) {
LoginServiceImplService implService=new LoginServiceImplService();
LoginServiceImpl service = implService.getLoginServiceImplPort();
User user = service.showLogin("zhangsan", "password");
System.out.println("Client登录:"+user.getUsername());
}

}

————————————————
版权声明:本文为CSDN博主「sanluo11」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sanluo11/article/details/52604584

posted @   ingemar,fang  阅读(214)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示