java webservice原理_WebService的工作原理

Web Service全称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 消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。

UDDI (Universal Description, Discovery, and Integration) 是一个主要针对Web服务供应商和使用者的新项目。在用户能够调用Web服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件,UDDI是一种根据描述文档来引导系统查找相应服务的机制。UDDI利用SOAP消息机制(标准的XML/HTTP)来发布,编辑,浏览以及查找注册信息。它采用XML格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。

JAX-WS是什么:

JSX—WS(Java API for XML Web Service)。他是用来简化使用java构造web服务和web服务客户端的工作的技术。

Web服务(项目中的流程)

1bf86cd7ea16f33320c06b965c19be24.png

方案一:在地址栏输入URL,http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

48420a1ba4205d943741b2bc24df70f2.png

5052ad28c5d5f4238a7d2f7dae8c854c.png

方案二:通过Java代码实现

如图所示:

e318bc4ecfb8743f9d4267ae3fee16a9.png

74fc4ad4e781217275b7e0dfc70eaaf0.png

104629e5fe89391a519f8cc2b96471d0.png

测试类:

public static void main(String[] args) {

MobileCodeWS ws=new MobileCodeWS();

MobileCodeWSSoap soap=ws.getMobileCodeWSSoap();

String address = soap.getMobileCodeInfo("1345338", "");

System.out.println(address);

}

4951fbeb7b5333c0f8c7d094bf88d63c.png

方案三:使用JAX-WS发布服务

定义服务器类以及方法[HelloService]

使用@WebService注解,标识一个java类或一个接口作为一个服务

806a42edbc262c27430c76c80da19d8d.png

服务正在监听...

be6d2d4341759230e1bd54d9fa4abe0e.png

在浏览器中测试:

99ae787b14f628274ce2d278bd28f98e.png

同理 cmd命令解析该文档的类或方法[客户端]

3c0df16379570a3fa7585adbad9f549a.png

2c574de5c9e1907133d55306af97de04.png

新建一个工程,运用这些类,进行测试

5862cfb9488eb27303ec3b250c292b4d.png

MyTest测试类:

public class MyTest {

public static void main(String[] args) {

HelloServiceService service=new HelloServiceService();

HelloService hs = service.getHelloServicePort();

hs.say("二傻");

}

}

33fea07d3ddbe8918c506072d2a19544.png

better late than never。

--- 只要开始,虽晚不迟

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值