第10章WebService开发课堂精简.ppt
《第10章WebService开发课堂精简.ppt》由会员分享,可在线阅读,更多相关《第10章WebService开发课堂精简.ppt(79页珍藏版)》请在三一办公上搜索。
1、1,Java EE应用技术基础,济南大学信息学院 刘鹍,2,JPA,开发步骤:增加JPA开发能力配置文件 persistence.xml 编写带标注的实体类(可以通过反向工程生成)编写DAO层类(可以通过反向工程生成)目录结构:META-INF/persistence.xml实体Bean:带注释的POJO类DAO层接口和实现类(会话Bean),3,EJB实体Bean,JBoss中实体Bean的应用配置JBoss数据源(*-ds.xml)在MyEclipse的Database Explorer视图下新建一个数据库连接的实例新建一个EJB project,选择使用JPA,同时指定数据源的名称(ja
2、va:数据源名称)和数据库连接的参数。反向工程(EJB3 Reverse Engineering)生成实体Bean和DAO层实现类(接口)打包,发布(需要把JDBC驱动拷贝到serverdefaultdeploy的lib下面)写测试类测试,4,第10章 Web Service开发,5,学习要点:,1掌握Web Service的基础知识。2熟悉使用JAX-WS构建Web Service的过程。3掌握JAXB绑定XML Schema的方法。4了解SAAJ。5.了解JAXR。,6,Web Service概述,什么是Web Service?Web Service 是一种新的 Web 应用程序分支,它们
3、是自包含、自描述、模块化的应用,可以在网络(通常为 Web)中被描述、发布、查找以及通过 Web 来调用。Web Service是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得 Web Service 能与其他兼容的组件进行互操作。使用标准的互联网协议,像超文本传输协议 HTTP 和 XML。,7,Web Service概述,简单来说,Web Service就是一个向外界暴露出接口的能够通过网络进行远程调用的应用程序。更准确地说:一方面Web Service是一种部署在Web上的对象;另一方面Web Service是建立在以XML为主的、开放的Web标准协议
4、规范的基础上的分布式应用新平台,也就是说Web Service的实质是一套标准,它定义了应用程序如何在Web上实现互操作。只需要遵守这一套标准,人们可以用任何语言,在任何平台上实现所需要的Web Service,并且可以顺利地同网络上任何其它亦遵守上述协议的Web Service组件进行互操作,从而可以实现一种高效、低廉的异构平台上应用的集成。对于从事企业应用开发来讲,学习Web Service技术是相当必要的。,8,第10章 Web Service开发,10.1 Web服务概述 10.2 WEB Service基础 10.3 XML基础10.4 用于XML的java API(JAXP)10.
5、5 使用JAX-WS构建简单的Web Service10.6 使用JAXB绑定XML Schema10.7 SAAJ10.8 JAXR,9,第10章 Web Service开发,10.1 Web服务概述 10.2 WEB Service基础 10.3 XML基础10.4 用于XML的java API(JAXP)10.5 使用JAX-WS构建简单的Web Service10.6 使用JAXB绑定XML Schema10.7 SAAJ10.8 JAXR,10,10.1 Web服务概述,10.1.1 Web Service的核心标准10.1.2 Web Service体系架构,11,10.1.1 W
6、eb Service的核心标准,XMLSOAPWSDLUDDI,12,10.1.1 Web Service的核心标准,XMLXML(eXtensible Markup Langugage,即可扩展标记语言)是Web Service技术架构的基石,它是Web Service中表示数据的基本格式,但是它没有定义怎样扩展这套数据类型。例如,整形数用16位、32位还是64位表示并没有在XML中定义。而W3C制定的XML Schema就是专门解决这个问题的一套标准,它定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型,Web Service平台就是用XML Schema作为其数据类型系统的。,
7、13,10.1.1 Web Service的核心标准,SOAPSOAP(Simple Object Access Protocol,简单对象访问协议)提供了标准的RPC(远程过程调用协议)方法来调用Web Service。SOAP规范中定义了SOAP消息的格式,以及怎样通过HTTP协议来使用SOAP。SOAP是基于XML和XSD(XML Schemas Definition)的,其中XML是SOAP的数据编码方式。,14,10.1.1 Web Service的核心标准,WSDLWSDL(Web Services Description Language,Web Services 描述语言)是一
8、种基于XML的,用于描述Web Service及其操作、参数和返回值的语言。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的,这将是一个很大的好处。不然依靠Web Service作者自身的即兴发挥,对Web Service的描述将会变得混乱且不能被计算机解析。一些最新的开发工具既能根据Web Service生成WSDL文档,又能通过导入WSDL文档,生成调用相应Web Service的代码。,15,10.1.1 Web Service的核心标准,UDDIUDDI(Universal Description Discovery Integration,统一描述、发现和集成协议)是
9、Web Service 架构下核心的服务描述、发现和集成机制,其目的是在网上自动查找Web Service。一旦Web Service注册到UDDI,客户就可以很方便地查找和定位到所需要的Web Service。,16,10.1.2 Web Service体系架构,服务提供者(Service Provider)从企业的角度看,这是服务的所有者。从体系结构的角度看,这是托管被访问服务的平台。服务请求者(Service Requestor)从企业的角度看,这是要求满足特定功能的企业。从体系结构的角度看,这是寻找并调用服务,或启动与服务交互的应用程序。服务请求者角色可以由浏览器来担当,由人或无用户界
10、面的程序(例如,另一个Web Service)来控制它。服务注册中心(Service Registry)这是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描述。,17,10.1.2 Web Service体系架构,Publish(发布)服务提供者发布服务描述以使服务可访问并且服务请求者可以查找它。Find(查找)服务请求者可以通过服务注册中心查找特定种类的服务。Bind(绑定)服务请求者通过绑定调用服务提供者提供的服务。,18,第10章 Web Service开发,10.1 Web服务概述 10.2 WEB Service基础 10.3 XML基础10.4 用于XML的java API
11、(JAXP)10.5 使用JAX-WS构建简单的Web Service10.6 使用JAXB绑定XML Schema10.7 SAAJ10.8 JAXR,19,10.2 WEB Service基础,10.2.1 SOAP10.2.2 WSDL10.2.3 UDDI,20,10.2.1 SOAP,SOAP(Simple Object Access Protocol,简单对象访问协议)是在分散或分布式的环境中交换信息的简单的协议,是一个基于XML的协议。SOAP在Web Service中作为用于XML 消息传递的一种非常普遍的协议,它包括四个部分:SOAP封装(envelop),封装定义了一个描述
12、消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们的框架;SOAP编码规则(encoding rules),用于表示应用程序需要使用的数据类型的实例;SOAP RPC表示(RPC representation),表示远程过程调用和应答的协定;SOAP绑定(binding),使用底层协议交换信息。虽然这四个部分都作为SOAP的一部分定义的,但它们在功能上是相交的、彼此独立的。特别的,信封和编码规则是被定义在不同的XML命名空间(namespace)中,这样使得定义更加简单。,21,10.2.1 SOAP,SOAP的两个主要设计目标是简单性和可扩展性。这就意味着有一些传统消息系统或
13、分布式对象系统中的某些性质将不是SOAP规范的一部分。比如:分布式垃圾收集(Distributed garbage collection)、成批传送消息(Boxcarring or batching of messages)、对象引用(Objects-by-reference(which requires distributed garbage collection))、对象激活(Activation(which requires objects-by-reference))。,22,10.2.1 SOAP,SOAP可简单地理解为这样一个开放协议的组合SOAP=RPC+HTTP+XML:采用H
14、TTP作为底层通讯协议;RPC作为一致性的调用途径;XML作为数据传送的格式,允许服务提供者和服务客户经过防火墙在INTERNET进行通讯交互。RPC的描叙可能不太准确,因为SOAP一开始构思就是要实现平台与环境的无关性和独立性,每一个通过网络的远程调用都可以通过SOAP封装起来,包括DCE(Distributed Computing Environment)、RPC CALLS、COM/DCOM CALLS、CORBA CALLS、JAVA CALLS等等。,23,10.2.1 SOAP,客户发送请求时,不管客户是什么平台,首先把请求转换成XML格式,SOAP网关可自动执行这个转换。为了保证
15、传送时参数、方法名、返回值的唯一性,SOAP协议使用了一个私有标记表,从而服务器的SOAP网关可以正确地解析;而使用XML作为编码表现形式,提供了更高层次上的抽象,从而实现与平台和环境的无关。,24,10.2.2 WSDL,WSDL(Web Service Description Language,即Web服务器描述语言)是用XML文档来描述Web服务的标准,是Web服务的接口定义语言,由Ariba、Intel、IBM、Microsoft等共同提出。通过WSDL,可描述Web服务的三个基本属性:服务做些什么服务所提供的操作(方法)如何访问服务和服务交互的数据格式以及必要协议服务位于何处协议相关
16、的地址,如URL,25,10.2.2 WSDL,WSDL文档以端口集合的形式来描述Web服务,WSDL 服务描述包含对一组操作和消息的一个抽象定义,绑定到这些操作和消息的一个具体协议,和这个绑定的一个网络端点规范。WSDL 文档被分为两种类型:服务接口(service interface)和 服务实现(service implementations),26,10.2.2 WSDL,WSDL 文档在Web Service的定义中使用下列元素:Types-数据类型定义的容器;Message-通信消息的数据结构的抽象类型化定义;Operation-对服务中所支持的操作的抽象描述;PortType-对
17、于某个访问入口点类型所支持的操作的抽象集合;Binding-特定端口类型的具体协议和数据格式规范的绑定。Port-定义为协议/数据格式绑定与具体Web访问地址组合的单个服务访问;Srvice-相关服务结点的集合。,27,10.2.3 UDDI,UDDI(Universal Description,Discovery and Integration,即统一描述、发现与集成协议标准)是一个非常重要的创新。它是第一个由平台提供者、软件开发者、交易市场运营者、电子商务企业和全球商务领头羊为解决B2B电子商务的发展的局限性而一起提出的跨行业的解决方案,是一套基于Web的、分布式的、为Web服务提供的信息
18、注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web服务注册以使得别的企业能够发现的访问协议的实现标准。,28,10.2.3 UDDI,UDDI计划是一个广泛的,开放的行业计划,它使得商业实体能够(1)彼此发现;(2)定义它们怎样在internet上互相作用,并在一个全球的注册体系架构中共享信息。UDDI是这样一种基础的系统构筑模块,它使商业实体能够快速、方便地使用它们自身的企业应用软件来发现合适的商业对等实体,并以其实施电子化的商业贸易。,29,10.2.3 UDDI,UDDI同时也是Web服务集成的一个体系框架。它包含了服务描述与发现的标准规范。UDDI规范利用了W3C和Int
19、ernet工程任务组织(IETF)的很多标准作为其实现基础,比如XML,HTTP和域名服务(DNS)这些协议。另外,在跨平台的设计特性中,UDDI主要采用了已经被提议给W3C的规范的早期版本。,30,10.2.3 UDDI,通过这个开放性的计划,企业可以发布他们所期望的在Web上实现商务流程对接的方式的相关信息和技术规范,这潜在地为B2B商务的成长提供了动力。UDDI将通过创建一个全球的、独立平台,运用Internet发现商机、描述服务和综合商务的开放式框架,使所有的贸易都从中获利。,31,10.2.3 UDDI,UDDI计划不由任何一家现有的公司实际运作。同时它也不是一个标准的实体或者是一个
20、新的公司。UDDI商业注册中心被作为一个支持UDDI规范的Web服务来运作。最初,Ariba,IBM和Microsoft将运作这个分布式的服务,但是额外的注册中心的访问入口仍然被期待着。一个访问入口的委员会(Operator Council)将协助制定访问入口的方针和服务质量等问题。,32,10.2.3 UDDI,从UDDI可以获得的直接收益包括:具备UDDI能力的企业可以在Internet上通过他们首选的企业应用,快速便捷地发现合适的商业实体并实现彼此之间的互操作,这将最终推动企业自身的经济收益。为企业迅疾地参与全球化的Internet经济提供了一个方便的发展道路。提供了一个为商业在一个简单
21、的开放式环境中,循序渐进地描述他们的服务和商业流程的途径。提供了一组规范,使企业能够在Internet上调用服务并为他们的首选客户提供增值服务。,33,回顾:Web服务基础,SOAP:Simple Object Access Protocol,简单对象访问协议WSDL:Web Service Description Language,即Web服务器描述语言UDDI:Universal Description,Discovery and Integration,即统一描述、发现与集成协议标准,34,第10章 Web Service开发,10.1 Web服务概述 10.2 WEB Service基
22、础 10.3 XML基础10.4 用于XML的java API(JAXP)10.5 使用JAX-WS构建简单的Web Service10.6 使用JAXB绑定XML Schema10.7 SAAJ10.8 JAXR,35,10.3 XML基础,10.3.1 XML标准10.3.2 DTD10.3.3 XML Schema,36,10.3 XML基础,XML(eXtensible Makeup Language,即可扩展标记语言)是一种简单灵活的文本格式,可以作为创建新的标记语言的基础,以便在文档发布和数据交换中使用。XML 基于万维网联盟(W3C)的工作小组发布的一系列标准。因此,非常适合(且
23、不限于)在基于Web 的应用程序中使用。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其它与特定领域有关的、语义的、结构化的标记语言的句法语言。,37,10.3 XML基础,关于XML要理解的第一件事是,它不只是像超文本标记语言(Hypertext Markup Language,HTML)或是格式化的程序。XML是一种元标记语言。用户可以定义自己需要的标记。这些标记必须根据某些通用的原理来创建,但是在标记的意义上,也具有相当的灵活性。XML定义了一套元句法,与特定领域有关的标记语言(如MusicML、MathML和CML)都
24、必须遵守。如果一个应用程序可以理解这一元句法,那么它也就自动地能够理解所有的由此元语言建立起来的语言。关于XML要了解的第二件事是,XML标记描述的是文档的结构和意义。它不描述页面元素的格式化。可用样式单为文档增加格式化信息。文档本身只说明文档包括什么标记,而不是说明文档看起来是什么样的。,38,10.3 XML基础,Hot Cop by Jacques Morali Henri Belolo and Victor Willis Producer:Jacques Morali Publisher:PolyGram Records Length:6:20 Written:978 Artist:V
25、illage People,Hot Cop Jacques Morali Henri Belolo Victor Willis Jacques Morali PolyGram Records 6:20 978 Village People,39,10.3 XML基础,XML是一种类似于HTML的标记语言,但是它是被设计用来描述数据的,重点是什么是数据,如何存放数据,与描述信息相关;而HTML是被设计用来显示数据的,重点是显示数据以及如何显示数据更好,与显示信息相关。XML不是HTML的替代品,XML和HTML是两种不同用途的语言。XML 被设计成什么都不做的,它只是用来组织、存储和发送信息。X
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 10 WebService 开发 课堂 精简
链接地址:https://www.31ppt.com/p-6614831.html