21--28
SOAP->WSDL->JAX-RPC->JAX-WS
JAX-WS 完全基于标准的实现,在binding使用JAXB。在Parsing层,使用的STAX,完全支持schema规范(21)
JAX-RPC->JAX-WS区别与联系
JAX-WS(Java API for XML-Based Web Services ) ?2.0 java5的最新变成标准 ?最新的web service协议栈,一个完全基于标准的实现,Apache CFX也支持。apache尾巴service开源框架
语
为什么使用javax-ws,
用于简化java构造web service和web services客户机的工作的技术
提供了完善的web servies 堆栈。可减少和部署web services的步骤,包括了JAXB (Java Architecture for XML Binding)
提供了用于将传统java对象类转换为web services的annotation库,葱儿加速了web service的开发工作
另外,他还指定了从采用WSDL(Web服务描述语言),定义的服务到实现该服务的java类之间的详细映射 ,采用WSDL定义的任何复杂类型都通过遵循JAXB规范定义的映射来映射为Java类
JAX-WS发布 Web Services ?是一组XMLweb servies的java API
允许开发者选择RPC-oriented或者message-oriented来实现自己的Web Servies
一个远程调用可以转换为一个基于XML的协议例如SOAP
在使用JAX-WS过程中,开发者不需要编写任何生成和处理SOAP消息的代码
过程:
JAX-WS运行时实现会讲这些API的调用转换成对应的SOAP消息
在服务器段,用户只需要通过java语言定义远程调用所需要实现的接口
通过调用JAX-WS的服务发布接口就可以将其发布为Web Services接口
在客户端,用户可以通过JAX-WS的API创建一个代理,用本地对象来替代远程的服务来实现对远程服务器的调用
也提供了一组针对底层消息进行操作的API调用通过,Dispatch直接使用SOAP消息或者XML消息发送请求。或者使用Provider处理SOAP或者XML消息
通过JAX-WS轻松实现java平台与其它编程环境的互操作
JAXB (Java Architecture for XML Binding) ?
提供了一种非常方便的方法来将XML映射大java代码的表示形式,从而支持数据绑定功能,JAXB消除了SOAP消息中的XML模式消息转换为java代码的工作,可以不必完全了解SOAP和XML.定义java和xml模式之间的绑定,
提供了将XML借组为java内容树的方法,以及将java内容树重编组会XML文档的方法,执行流程

JAXB的特点就是将你用DTD定义好的XML文档映射为JAVA对象
访问XML中元素,属性,只要通过对象上的一系列的getter和setter方法即可
JAXB缺点,只能访问特定的XML文档,只可访问你用DTD定义好的XML文档
JAXB的工作原理 ? ?编组,解组,往返
编组:把内容中的数据转换到存储媒介上的过程
? ? ? ? java和xml环境中,编组就是把一些java对象转换成一个或者多个XML文档。把java
? ? ? ? 中的java实例中的面向对象结构转换成适用于xml的扁平结构或者RDBMS的关系结构
解组:把数据从存储媒介转换到内存中的过程,正好与编组相反
? ? ? ??复杂性在于从正确的数据到正确的java代码变量的映射
? ? ? ??
往返:最重要,用于描述从存储媒介到内存然后回到存储媒介的完整循环
? ? ? ? 从xml文档大oajva实例变量然后再回到xml文档。
? ? ? ? 要求,如果中间没有修改数据,xml输入和xml输出应该是同等的