WebService入门 (JDK开发WebServrice)

1. WebService简介

Web Service——也叫XML Web Service WebService,是一种跨编程语言和跨操作系统平台的远程调用技术。
各个应用程序之间的交流就需要Web Service来作为相互交流的桥梁。
Web Service是:通过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 消息以及如何交换这些消息。大多数

情况下由软件自动生成和使用。

XML+XSD、SOAP和WSDL就是构成WebService平台的三大技术。

.WebService的工作调用原理
对客户端而言,我们给这个类WebService客户端API传递wsdl文件的url地址,这些API就会创建出底层的代理类,调用这些代理,就可以访问到webservice服务。代理类把客户端的方法调用变成soap格式的请求数据再通过HTTP协议发出去,并把接收到的soap数据变成返回值返回。对服务端而言,各类WebService框架的本质就是一个大大的Servlet,当远程调用客户端给它通过http协议发送过来soap格式的请求数据时,它分析这个数据,就知道要调用哪个java类的哪个方法,于是去查找或创建这个对象,并调用其方法,再把方法返回的结果包装成soap格式的数据,通过http响应消息回给客户端。

2. JDK实现WebService
(1)建一个接口Person,创建方法
@WebService //使用@WebService注解标注WebServiceI接口
public interface WebServiceI{
@WebMethod //使用WebMethod注解标注WebService接口中的方法
public String say(String what);
}

(2)编写WebServiceI接口的实现类WebServiceImpl,使用@WebService注解标注实现类
@WebService
public class PersonImpl implements WebServiceI{
@Override
public String say(String what){
System.out.println(“服务端:”+what);
return “正在说”+what;
}
}

(3)写发布类WebServicePublish,使用Endponit(终端)类发布WebService
String address = “http://172.20.10.5:6868/WS_Service/webService”;
//IP地址是本机动态地址
Endpoint.publish(address, new WebServiceImpl());
System.out.println(“服务端发布WebService成功…”);

(4)使用Eclipse自带的工具测试服务端
http://172.20.10.5:6868/WS_Service/webService?wsdl
注意IP地址

3.客户端
(1)创建终端工程,主要用来实现接收服务端的暴露。
(2)找到客户端源代码路径,
使用命令进行解析
wsimport -keep http://172.20.10.5:6868/WS_Service/webService?wsdl
建议:在src中右击操作输入命令,让产生的文件都生成在src中。

(3)创建Test.java测试类,在main方法中:
PersonImpService personImpService =new PersonImpService();
PersonImp personImp=personImpService.getPersonImpPort();
String str=personImp.eat(“啦啦啦”);
System.out.println(str);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值