2016-12-29 32 views
0

私の会社には現在、データを処理するジョブを実行できるJavaプロジェクトがあります。現在のプロジェクトにはWebインターフェイスがありますが、Webインターフェイスにはかなり古くて、ほとんどのものがJavaサーブレットを通じてHTMLをWebブラウザに出力して実装されています。REST APIを作成するNodeJSとJava

代わりに、同じコアプロセスを使用してREST APIを作成し、将来は別の実装に置き換える必要があります。そして最終的には、顧客にREST APIを使用させることがあります。

私の質問は、NodeJSがかなり強力で、私が読んだところでは、JavaScriptとJSONの統合を使ってREST APIを開発するときに最も効果的だと理解しています。 Javaを使用してREST APIを作成しなければならない場合は、JavaEEとGlass Fishを使用するか、NodeJSでAPIをビルドする必要がありますか?NodeJSサーバーでコアJavaサービスを呼び出してリクエストを処理しますか?

私は不必要な複雑さを導入しているかもしれないが、プロジェクトはかなり大きく、プロジェクトをNodeJSに移植することはできません。私はREST APIの作成(またはSOAP)に関する経験がないので、これは私の新しい領域です。助けのための

おかげで、 コルビー

+0

コアアプリケーション用のJavaとAPI用のノードJSの2つを行いたいと思います。間違っていなければ、Netflixは同じインフラストラクチャを使います。 –

答えて

1

あなたの目的は、あなたの顧客はAPIを使用することができるようにREST APIを作成することです。 これを使用するには:

  • 完全なアプリケーションコードとRest APIをすべて作成するには、NodeJSを使用します。 たくさんあります。
  • JavaはRest APIを作成するのに適しています。快適なJEEとサーバーを使用できます。たとえば、GlassFish。

私の提案:現在のアプリケーションがJava上にあるため、Javaを使用してください。同じ言語で作業するので時間を節約できます。あなたはすでにJava言語でスキルを持っています。 Springフレームワーク(Spring MVC、Spring Security、Spring Boot)を使用することができます。これらのフレームワークはいくつかの優れた機能を提供し、簡単に学ぶことができます。

+0

私は最近、あなたの提案に従ってSpring Bootを検討しました。私は迅速な展開とそれに使用できるドキュメントに驚いています。ありがとう! – Colby

1

サーブレットに基づいて現在のアプリケーションがJavaになっているため、REST APIを作成する最も簡単な方法は、現在のアプリケーションでJAX-RS APIを使用することです。あなたはJAX-RS tutorialから始めることができます。また、JavaオブジェクトとJSONの間の変換にJSON-Pを使用することもできます。 GlassFish、Payara、またはその他のアプリケーションサーバーは、既に両方のAPIを提供しているはずです。

Tomcatなどのプレーンサーブレットコンテナを使用する場合は、同じ方法でJAX-RS APIをサポートするサーブレットを提供するアプリケーションにJerseyライブラリを追加できます。あるいは、Spring RESTを使用してREST APIを構築することもできます。

REST APIのためだけにNode.jsを使用することはお勧めできません。これは、アプリケーションで既に使用されているJavaで簡単に行うことができる新しい言語を導入することになります。結局、追加のNode.jsアプリケーションを現在のJavaアプリケーションに接続する必要がありますが、これは面倒です。おそらく、Node.jsアプリケーションとJavaアプリケーションの間にRESTインタフェースを作成し、Node.jsアプリケーションを冗長化することになります。

+0

提案をありがとう、私は間違いなく1つの言語に固執するよ。 – Colby

関連する問題