【问题标题】:Can Node.js replace java as server side technology in web appNode.js 能否取代 java 作为 Web 应用程序中的服务器端技术
【发布时间】:2019-03-23 17:53:17
【问题描述】:

我正计划开始制作我的第一个大型网络项目。我目前正试图将所有内容可视化,但其中一些技术将在运行中学习。我最近学习了 JavaScript 并学习了一点 Node.js。

我想用java制作一个连接到Mysql数据库的rest API。在做了一些不必要的研究之后,我发现了一个对我来说似乎很大胆的声明。那 node.js 可以以某种方式完全取代 java 作为后端?

据我所知,Node.js 是一个基于 chrome JavaScript 引擎的运行时环境,带有一些库,如 NPM。 (我还需要进一步研究)

这是一个很长的介绍,我的问题的核心是:在我的情况下,Node.js 可以替代 Java,如果可以,为什么以及如何?

【问题讨论】:

  • 人们会尝试,但我不建议这样做。如果您需要并且不想使用 Java,那么还有许多其他语言和框架可用于精简 REST API 应用程序。
  • 是的,Node.js 可以在服务器端运行并与数据库建立连接,以及通过端点提供内容,如果您愿意的话。您可以查看 Express 以了解服务器技术的实现。 Node 是否能够为您的用例替换 Java 取决于您的实际用例。例如,Java EE 在非常大的应用程序中可能非常强大。
  • 我认为运行 Node 的服务器并不罕见。事实上,我认为它可能是迄今为止使用 Node 最常见的事情,尽管我没有任何数据来支持这一点。有 MERN 堆栈(MongoDB、Express、React、Node.js),它现在在 Web 应用程序中很流行。以前 MEAN 堆栈(Angular 而不是 React)更受欢迎。两者仍在使用中。您还可以混合和匹配其他技术,但这些技术似乎经常一起使用 - 足以拥有自己的首字母缩略词。
  • NodeJs 现在在服务器应用程序中非常流行,毫无疑问将来会更多地使用。但是,您需要记住,NodeJs 与 NoSql 数据库配合得更好,您将很难将 sql 服务器与您的 nodejs 应用程序连接起来。
  • @Melchia 这实际上不是真的。我们使用不比 nosql 复杂的关系数据库(postgres)。使用 nosql 与 rdbms 的决定并不是“一个比另一个更容易”,但它应该完全取决于您尝试保留的数据。只是盲目地使用 nosql 可能会导致以后的麻烦。

标签: javascript java node.js web


【解决方案1】:

一些个人想法:

就我而言,Node.js 能否替代 Java,如果可以,为什么以及如何?

确实如此。 Nodejs 不仅仅是带有一些库的 V8,而且还提供了许多与 IO 交互的方式,这意味着您可以运行 http(s) 服务器、连接到数据库和其他服务器、生成线程、写入/读取文件等等.如果有一些 JVM 支持而 Nodejs 不支持的低级别的东西,你可以只用 C++ 编写一个本机绑定(或者从 NPM 中获取一个,可能已经有一个用于你的确切用例)。

Nodejs 的主要好处是您只需编写 JavaScript,而不必更改语言。这使得开发更加容易和快速(至少对我而言)。

【讨论】:

    猜你喜欢
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-04
    相关资源
    最近更新 更多