0

我是 REST API 的新手,对 Maven 不太熟悉。我注意到大多数人将 REST 与 Jersey 实现结合使用。我需要编写 POST 请求,并且可能还需要 GET 请求。我很难找到正确的 - 最低要求 - Maven 开始编码的依赖项。

我在网上看了很多资源。看起来泽西岛带有 Glassfish 服务器。我在本地 PC 上安装了 Tomcat,我将使用它来开发 REST 和测试。我们让 Jboss 在我们的生产服务器上运行,我的代码最终将部署到这些服务器上。在我看来,不同的资源会说不同的东西,或者我有可能没有得到它!

1) 我可以在不依赖 Glassfish 的情况下将 Jersey 与 Tomcat 或 Jboss 一起使用吗?

2)回到Maven依赖;

在这里我发现:

http://aike.me/site/blog/20090914/restful_web-services_in_java_using_jax-rs_-_part_1_getting_up_and_running

Maven: Getting Jersey into your project

<repositories>
    <repository>
        <id>maven2-repository.dev.java.net</id>
        <name>Java.net Repository for Maven</name>
        <url>http://download.java.net/maven/2/</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-server</artifactId>
    <version>1.0.3.1</version>
    <scope>compile</scope>
</dependency>
<dependency>
    <groupId>com.sun.xml.bind</groupId>
    <artifactId>jaxb-impl</artifactId>
    <version>2.1.12</version>
    <scope>compile</scope>
</dependency>

<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>jsr311-api</artifactId>
    <version>1.0</version>
</dependency>
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.1</version>
    <scope>provided</scope>
</dependency>

这些就是我所需要的吗?

在 Jersey 网站上的 B/c 我发现定义了不同的依赖项:

https://jersey.java.net/documentation/latest/modules-and-dependencies.html

我不会在这里复制和粘贴这些依赖项,因为它使这篇文章很长。我没有看到任何这些依赖项 - 在http://aike.me中提到的定义在:

https://jersey.java.net

如:

<artifactId>jersey-server</artifactId>

<artifactId>jaxb-impl</artifactId>

<artifactId>jsr311-api</artifactId>

<artifactId>jaxb-api</artifactId>

这是为什么?为什么我被提及不同的依赖项?

任何帮助是极大的赞赏。

4

2 回答 2

1

在组 ID 中使用带有“org.glassfish.*”的依赖项并不意味着您必须使用 Glassfish 服务器。

Jersey 已成为 glassfish 的一部分,这是包装名称更改的唯一原因。最新版本是在这个包下发布的,在 Jersey 网站上推荐它,所以我会坚持使用最新的包。

于 2015-10-10T06:58:20.933 回答
-1

我已经为此创建了一个快速入门模板,请随时 fork 或克隆它。 在这里获取

于 2013-09-28T02:37:57.897 回答