Java Jersey和jax rs之间有什么区别

Java Jersey和jax rs之间有什么区别,java,jersey,jax-rs,Java,Jersey,Jax Rs,我真的不明白泽西到底是什么 我所知道的是Jax-RS是一个用于构建restweb服务的API,而jersey呢? 我得到了一些信息,所有人都说:“jersey是Jax-RS的一个实现”。但这意味着什么 如果jax-rs是一个API,为什么我们需要jersey来创建restweb服务呢?jersey是否有更多的lib用于jax-rs?如果是,jax-rs是一个不完整的API?直接从站点获得 Jersey框架不仅仅是JAX-RS参考实现。 Jersey提供了自己的API,该API使用 进一步简化RE

我真的不明白泽西到底是什么

我所知道的是Jax-RS是一个用于构建restweb服务的API,而jersey呢? 我得到了一些信息,所有人都说:“jersey是Jax-RS的一个实现”。但这意味着什么

如果jax-rs是一个API,为什么我们需要jersey来创建restweb服务呢?jersey是否有更多的lib用于jax-rs?如果是,jax-rs是一个不完整的API?

直接从站点获得

Jersey框架不仅仅是JAX-RS参考实现。 Jersey提供了自己的API,该API使用 进一步简化RESTful服务的附加特性和实用程序 和客户开发。泽西岛还暴露了许多扩展SPI,因此 开发商可能会扩展Jersey以最适合他们的需要


JAX-RS是一个规范(只是一个定义),Jersey是一个JAX-RS实现。

JAX-RS是一个规范(只是一个定义),Jersey是一个JAX-RS实现。Jersey框架不仅仅是JAX-RS参考实现。Jersey提供了自己的API,该API通过附加功能和实用程序扩展了JAX-RS工具包,以进一步简化RESTful服务和客户端开发。

JAX-RS是一种规范,Jersey是一种JAX-RS实现。-正确

这可以理解为JAX-RS是一个接口,Jersey是一个实现该接口的类

这些规范创建了开发和使用web服务的标准

还有其他JAX-RS实现,比如wink、RestEasy


JAX-RS是一个规范,它规定了我们如何实现web服务,即输入类型、输入格式、输出类型、格式、配置等。它只是一个类型声明,它的实现是这些库、Jersey、wink RestEasy等


此外,Java也有类似JPA(Java持久性API)的规范,如上所述还有Hibernate,它是JPA的一个实现。

单独使用JAX-RS无法实现REST,需要将Jersey注册为web.xml上REST请求的servlet调度程序

设计了一个标准的、可移植的JAX-RSAPI。Jersey RESTful Web服务框架是一个开源、产品质量的框架,用于在Java中开发RESTful Web服务,提供对JAX-RSAPI的支持,并作为JAX-RS(JSR311和JSR339)参考实现

Jersey框架不仅仅是JAX-RS参考实现。Jersey提供了自己的API,该API使用附加的特性和实用程序扩展了JAX-RS工具包,以进一步简化RESTful服务和客户机开发

Restlet和Jersey是JAX-RS的两个最流行的实现,用于在Java生态系统中开发RESTful web服务,但也存在一些其他实现,例如Apache Wink、Apache CXF和JBoss RESTEasy。

Jersey在JAX-RS规范的一个实现中,Jersey只是一个以更简单的方式使用JAX-RS的接口。JAX-RS不提供servlet,但Jersey提供。Jersey提供了一个在JavaServlet容器中实现Restful Web服务的库,Jersey提供了一个servlet实现,它扫描预定义的类以识别Restful资源。在web.xml配置文件中,为web应用程序注册这个servlet。JAX-RS是一个规范(它基本上告诉您应该实现/遵循什么),Jersey是一个实现(这意味着应该如何实现这些规范)。对于一个规范,我们可以有多个实现。我们有用于JAX-RS的libs,因为我们可以在代码中使用JAX-RSAPI,所以将来如果您更改实现(在本例中是Jersey更改为其他内容),代码仍然可以正常工作。您可以将它与您的接口和实现类联系起来。@VishalAkkalkote您好,我正试着对这一点进行思考。我在工作中使用WebSphere8.5,并尝试使用JAX-RS编写REST服务,但所有教程都显示了JAX-RS和Jersy。你是说,我可以写同样的代码,即使我不使用Jersy lib,它也能工作?@superPhreshHackerKid是的。如果您使用JAX-RS的一个实现,它应该可以工作。例如ApacheCxfwell,我已经读过了,但不要问我的问题。如果我们有jax-rs,为什么我们需要jersey?jax是不完整的?@user1851366想象一下,有一个慈善组织为汽车创造(并免费赠送)设计。世界各地的制造商认识到这些设计是好的,并根据这些设计制造出真正的汽车。JAX-RS就像一个关于如何构建RESTful API的计划或设计,软件制造商认识到了这一点,并用真正的RESTful API实现了这些想法,其中一个叫做Jersey,但还有其他一些(即RESTEasy)。正如丰田以外的许多其他制造商可能会使用这些设计来制造他们自己的汽车版本一样。所以jax-rs说我们应该做什么,泽西也会这么做??这是有道理的,但是为什么会有jax-rs库呢?例如:jax-rs提供了一组接口(标准Java接口),这些接口是由Jersey实现的。所以需要一组接口(或类)作为依赖项来实现。。。但是,我们总是需要其他类来实现jax-rs,对吗?像这个,泽西,没错。i、 JAX-RS为您提供了javax.ws.RS.core.Request接口,Jersey在com.sun.Jersey.spi.container.containerRequest中实现了它,这与规范中的JPA和实现中的hibernate相同吗?