我需要处理webservice项目。所以通过书来介绍webservice项目的基础知识。但这些是我正在努力解决的问题: -
1.用于XML Web服务的Java API(JAX-WS): - JAX-WS只是用于创建Web服务的java编程语言API,现在是从版本6开始的核心java的一部分(尽管最初开发)作为Java Web服务开发包的一部分)。这样对吗?2.所有其他web服务框架无论是metro,jersey,glassfish都在内部使用JAX-WS。这是对的吗?
答案 0 :(得分:4)
问: 1.用于XML Web服务的Java API(JAX-WS): - JAX-WS只是用于创建Web服务的java编程语言API,现在是 从版本6开始的核心java的一部分(虽然最初开发 作为Java Web服务开发包的一部分)。是不是?
这是正确的,JAX-WS是一个应用程序编程接口(API)。从版本6开始,该API与JAX-WS参考实现(JAX-WS RI,RI =参考实现)一起成为JDK的一部分。为了扩展一点,JAX-WS 2.0从一开始就包含在JDK 6中,JAX-WS 2.1附带JDK 6u4,您将在JDK 7中找到JAX-WS 2.2(参见this link)。
问: 2.所有其他Web服务框架无论是metro,jersey,glassfish都在内部使用JAX-WS。这是对的吗?
严格来说,Metro并没有“使用”JAX-WS,而是包含已经提到的JAX-WS参考实现。 Jersey包括JAX-RS实现,而Glassfish不是Web服务框架,而是应用程序服务器。 Glassfish附带完整的Metro分销。
答案 1 :(得分:1)
JAX-WS是一个Web服务框架,提供工具和基础结构,为最终用户和中间件开发人员开发Web服务解决方案.JAX-WS代表XML Web服务的Java API。 JAX-WS是一种用于构建使用XML进行通信的Web服务和客户端的技术。 JAX-WS允许开发人员编写面向消息的Web服务以及面向RPC的Web服务。 在JAX-WS中,Web服务操作调用由基于XML的协议(如SOAP)表示。 SOAP规范定义了用于表示Web服务调用和响应的信封结构,编码规则和约定。这些调用和响应通过HTTP作为SOAP消息(XML文件)传输。
还有另一种类型的Web服务,称为RESTful.RESTful Web服务是为了在Web上最好地构建而构建的。 Representational State Transfer(REST)是一种体系结构样式,它指定约束(例如统一接口),如果应用于Web服务,则会引入所需的属性(如性能,可伸缩性和可修改性),从而使服务在Web上运行最佳。在REST架构风格中,数据和功能被视为资源,并使用统一资源标识符(URI)(通常是Web上的链接)进行访问。通过使用一组简单,定义明确的操作来执行资源。 REST架构风格将架构限制为客户端/服务器架构,旨在使用无状态通信协议,通常是HTTP。在REST架构风格中,客户端和服务器通过使用标准化接口和协议来交换资源表示。
通用JAX-RS用于开发RESTful Web服务。 JAX-RS是一种Java编程语言API,旨在使开发使用REST架构的应用程序变得容易。 JAX-RS API使用Java编程语言注释来简化RESTful Web服务的开发。开发人员使用JAX-RS注释来装饰Java编程语言类文件,以定义资源以及可以对这些资源执行的操作。 JAX-RS注释是运行时注释;因此,运行时反射将生成资源的辅助类和工件。包含JAX-RS资源类的Java EE应用程序归档文件将通过将归档文件部署到Java EE服务器来配置资源,生成辅助类和工件,以及向客户端公开资源。
不同的框架使用JAX-WS或JAX-RS。 Jersey使用JAX-RS,Metro使用JAXWS。