NodeJS 和 Java 创建 REST API

NodeJS and Java to create REST API

我公司目前有一个 Java 项目,允许我们 运行 作业来处理数据。当前项目有一个 web 界面,但是它很旧,并且大部分 web 界面是通过 Java Servlets 通过打印 HTML 到 web 浏览器来实现的。

我们想改为使用相同的核心进程创建 REST API,并在将来用不同的实现替换 Web 界面。然后最终,我们可能会让客户使用 REST API.

我的问题是:我知道 NodeJS 非常强大,据我所知,在使用 JavaScript 和 [=33] 开发 REST API 时最有意义=] 整合。我是否应该尝试使用 Java 创建 REST API,如果是,我应该使用 JavaEE 和 Glass Fish,还是应该使用 NodeJS 构建 API ,然后让 NodeJS 服务器调用核心 Java 服务来处理请求?

我知道我可能会引入不必要的复杂性,但是项目相当大,将项目移植到 NodeJS 是不可行的。我没有创建 REST API(或 SOAP)的经验,所以这对我来说是新领域。

感谢您的帮助, 科尔比

您的目标是创建 REST API,以便您的客户可以使用 API。 为此,您可以使用:

  • NodeJS 创建所有完整的应用程序代码和 Rest API。 有很多
  • Java好创造休息API。您可以使用您熟悉的 JEE 和服务器。例如,GlassFish。

我的建议:使用 Java,因为您当前的申请是 Java。您可以节省时间,因为使用相同的语言。您已经精通 Java 种语言。您可以使用 Spring 框架(Spring MVC、Spring 安全和 Spring 启动)。这些框架提供了一些很棒的功能并且易于学习。

由于您当前的应用程序已经在 Java 中,基于 Servlet,创建 REST API 的最简单方法就是使用 JAX-RS API in your current application. You can start with this JAX-RS tutorial. You would probably also want to use JSON-P 在 [=22] 之间进行转换=] 对象和 JSON。 GlassFish、Payara 或任何其他应用程序服务器应该已经提供开箱即用的 API。

如果您想使用普通的 servlet 容器,例如 Tomcat,您可以添加 Jersey library to our application, which provides a servlet to support the JAX-RS API in the same way. Or you can alternatively use Spring REST 来构建 REST API。

我不建议仅将 Node.js 用于 REST API - 它会引入一种新的语言,这可以通过 Java 轻松完成,它已被您的应用程序使用。最后,您仍然需要将额外的 Node.js 应用程序与当前的 Java 应用程序连接起来,这很麻烦。您可能最终会在 Node.js 应用程序和 Java 应用程序之间创建一个 REST 接口,从而使 Node.js 应用程序变得多余。