組み込みWebサーバーチュートリアル:Javaアプリケーションの起動中に組み込みHTTPジャージーサーバーを起動する方法

公開: 2014-07-01

しばらく前に、JAX-RSとJerseyを使用してJavaでRESTfulサービスを構築する方法に関するチュートリアルを書きました。 すべての詳細な手順を実行した後、プロジェクトをTomcat Web Serverにデプロイする必要があります。これで、問題はありません。 このチュートリアルを使用すると、約20分でRESTFulサービスを簡単に作成できるはずです。

しかし、 ~5 minsでそれを行うのはどうですか? また、Webアプリケーション用にTomcatをセットアップするのが非常に難しい場合もあります。

いくつかの理由があります:

  1. Tomcatバイナリを開発環境にコピーする必要がある場合があります。
  2. すべてのセットアップが正しく構成されていない場合、Tomcatアプリケーションが機能しない可能性があります。
  3. プロジェクトを.warプロジェクトとしてエクスポートする必要があります
  4. アプリケーションをTomcatにデプロイして、単純な.jarを実行したくない場合はどうなりますか?
  5. .jarプロジェクトを使用– httpサーバーをどのように起動しますか? アプリケーションは着信REST呼び出しを受け入れますか?

追加:Jersey WebアプリケーションにCORSフィルターを追加するにはどうすればよいですか?

WebジャージーアプリケーションにCross-origin resource sharingを追加する必要があります。 同じことについては、このチュートリアルに従ってください。

クロスオリジンリソースシェアリング(CORS)とは– Java Jersey Webサーバーに追加する方法は?

さて、簡単な解決策があります。 HTTPリクエストを手動で解析してHTTPレスポンスを手動でフォーマットするコードを記述せずに、Java SE APIのみを使用してJavaで非常に基本的なHTTPサーバー(GET / POSTのみをサポート)を作成する方法があります。

com.sun.net.httpserver.HttpServerを使用すると、上記のすべてを達成できるはずです。

始めましょう:

ステップ1:

新しいJavaプロジェクト「 CrunchifyJerseyEmbeddedHTTPServer 」を作成します。

Java-プロジェクト-CrunchifyJerseyEmbeddedHTTPServer

ステップ2:

Mavenプロジェクトに変換します。 これにより、依存関係を追加するための生活が簡素化されます。 このチュートリアルに従って、既存のJavaプロジェクトをMavenプロジェクトに変換してください。

ステップ3:

このプロジェクトでは、 jersey-server依存関係を1つにする必要があります。

ジャージーサーバー-Mavenの依存関係

ステップ4:

com.crunchify.tutorialパッケージの下にJerseyEmbeddedHTTPServerCrunchify.javaを作成します。

ステップ5:

RESTAPIを作成します。 同じパッケージ「 com.crunchify.tutorial 」の下にJavaクラスCrunchifyAPI.javaを作成します

ステップ6:

以上です。 次に、 JerseyEmbeddedHTTPServerCrunchify.javaを右クリックし、「 Run it as Java Application 」します。

ステップ7:

結果を検証します。 次のURLにアクセスしてください: http://localhost:8085/api 、ブラウザに結果が表示されます。

ジャージーHTTPサーバーブラウザの応答

このチュートリアルをお楽しみください。 コメントを共有する必要がありますか?

私は聞くためにここにいます。 ありがとう。