创建非常简单的 Jersey REST 服务并从 Java 客户端发送 JSON 数据

已发表: 2013-11-29

Crunchify REST 服务示例

最近我必须将 JSON 数据传递给 REST 服务,并且手边没有任何简单的客户端。 但是创建了非常简单的 Java 程序,它从文件中读取 JSON 数据并将其发送到 REST 服务。

具象状态转移 (REST) 作为基于 SOAP 和 Web 服务描述语言 (WSDL) 的 Web 服务的更简单替代方案,已在 Web 上获得广泛认可。 界面设计这一转变的关键证据是主流 Web 2.0 服务提供商(包括 Yahoo、Google 和 Facebook)采用 REST,他们弃用或传递了基于 SOAP 和 WSDL 的界面,转而支持更易于使用、面向资源的模型来公开他们的服务。 在本文中,Alex Rodriguez 向您介绍了 REST 的基本原理。

让我们开始编写代码:

  1. 创建 RESTFul Web 服务
    • Java 文件:CrunchifyRESTService.java
    • web.xml 文件
  2. 创建 RESTService 客户端
    1. CrunchifyRESTServiceClient.java 文件

另一个必须阅读: Spring MVC 示例/教程:Hello World – Spring MVC 3.2.1

第1步

Eclipse => File => New => Dynamic Web Project中。 将其命名为“ CrunchifyTutorials ”。 下面的教程也适用于Tomcat 8

创建动态 Web 项目

RESTServiceClient 的新动态 Web 项目 - Crunchify

步骤 2 创建部署描述符文件

如果您在WebContent\WEB-INF\下没有看到web.xml (部署描述符),请按照以下步骤操作。

打开web.xml并将内容替换为以下内容:

Step-3 将项目转换为 Maven 项目

遵循本教程:https://crunchify.com/how-to-convert-existing-java-project-to-maven-in-eclipse/。 这是我的 pom.xml 文件。

第四步

创建 RESTFul 服务: CrunchifyRESTService.java 。 在这里,我们将创建两个服务:

  1. /api/crunchifyService – POST 调用 – 我们将在测试中使用它
  2. /api/verify - GET 调用 - 只是为了确保服务成功启动

第 5 步

在 Tomcat 上部署项目CrunchifyTutorials 。 应毫无例外地部署 Web 项目。

  1. 在 Eclipse 中右键单击Servers tab
  2. 单击Add and Remove...项目
  3. 将 Project CrunchifyTutorials 添加到右侧Configured:侧。
  4. 点击Publish
  5. 点击Start

Step-6 验证 REST 服务

应该可以使用以下 URL 访问休息服务:http://127.0.0.1:8080/CrunchifyTutorials/api/verify

CrunchifyREST 服务启动成功

如果您尝试访问 http://127.0.0.1:8080/CrunchifyTutorials/api/crunchifyService 那么您将看到错误代码405 - Method not allowed - 这是有效的响应。 正如您所看到的,它是 POST 调用,并且应该期望请求中包含一些数据。

404 方法不允许 - 期望数据与 POST 调用

让我们继续前进。

第 7 步

复制下面的 JSON 内容并将其放在 Windows 的C:\\CrunchifyJSON.txt文件或 Macbook 的/Users/<username>/Documents/CrunchifyJSON.txt文件下。

步骤 8

创建 REST 调用客户端: CrunchifyRESTServiceClient.java.

请在下面的程序中change path to CrunchifyJSON.txt

第 9 步

现在让我们通过右键单击 CrunchifyRESTServiceClient.java 来运行客户端程序,您应该会看到以下两个输出

1) 在 Tomcat 控制台中

REST 服务 Tomcat 端日志 - 完整的 JSON

2) 在本地客户端控制台中

Crunchify REST 服务调用成功