web-dev-qa-db-ja.com

実装が最も簡単なフレームワークJava REST Webサービス

クライアントとサーバーの両方を実装するための最良のフレームワークは何ですかREST Javaのフレームワークですか?)使いやすい解決策を見つけるために少し苦労しています。

pdate:JerseyとRestletはどちらも良いオプションのようです。おそらくRestletを使用しますが、両方で実験します。

29
Marcus Leon

Restlet それはあなたが探しているものを提供するはずです:

  • クライアントとサーバーのサポート(比較的対称的なAPI)
  • スマートURLバインディング
  • mIMEタイプの理解(受け入れられたMIMEタイプが与えられた場合、そのタイプでの表現をリソースに要求します)
  • JAX-RSアノテーションをサポート(Jerseyと同様)
20
Stephen

ジャージ はどちらにとっても簡単です。 Webサービスを作成するには、アノテーションを使用します。

@Path("/helloworld")
public class HelloWorldResource {

    // The Java method will process HTTP GET requests
    @GET
    // The Java method will produce content identified by the MIME Media
    // type "text/plain"
    @Produces("text/plain")
    public String helloWorld() {
        // Return some cliched textual content
        return "Hello World";
    }
}

クライアントの場合:

Client client = Client.create();
WebResource webResource = client.resource("http://localhost:8080/helloworld");
String s = webResource.get(String.class);
System.out.println(s); // prints Hello World
24
Droo

dropwizard も見てください。

6
joshua

Restletは、クライアント側とサーバー側の両方で、2.0バージョンの注釈もサポートしています。 JAX-RS APIも拡張機能としてサポートされています。

サーバーサイドの簡単な例を次に示します。

public class HelloWorldResource extends ServerResource {

    @Get
    public String represent() {
        return "hello, world";
    }

}

クライアント側:

// Outputting the content of a Web page  
new ClientResource("http://www.restlet.org").get().write(System.out);

詳細については、 このページを確認 をご覧ください。

3
Jerome Louvel

JBossの新しい RESTEasy ライブラリがあります。最初の発売以来、急速に発展しているようです。それが良いかどうかはわかりません。 「チェックアウト」リストにあります。

2
SteveD

あなたはCXF JAX-RS実装を見ることができます。その機能の完全なリストについては、 JAX-RSのCXF Webサイト を確認してください。プロジェクトの背後にあるコミュニティは非常に活発であるようです(2013年7月)。 CXFメーリングリスト の1日あたりのメッセージ数を示します。

1
i000174

まだインキュベーションモードであるが、非常に成熟した高品質の新しいフレームワークであるApache winkをお勧めします。

http://incubator.Apache.org/wink/

これはJAX-RS仕様を実装し、REST開発用のクライアントとサーバーの両方のフレームワークを備えています。Apacheはこのプロジェクトの後ろに立っています-これは常に良い兆候です(そして良いライセンスです:-))

このフレームワークについて私が最も気に入っているのは、Springとの直感的な統合です。フレームワークを簡単に構成および拡張したい場合に非常に便利です。

0
LiorH

更新:Xydra Restlessは維持されなくなりました+++「インスタンスの予約」機能をリリースする前にGoolge AppEngineを使用している場合は、 Xydra Restless を検討することをお勧めします。

0
Dr. Max Völkel

私は個人的には使用していませんが、一緒に仕事をしているチームの中には、Spring 3 MVCを使用している人もいます。 RESTのREST 3:@MVC は、ブログ投稿の概要のように見えます。 RESTful機能には、「URIテンプレート」、「コンテンツネゴシエーション」、「HTTPメソッド変換」、「ETagサポート」などがあります。

編集:また、この質問を参照してください: 誰もが推奨するJava MVCとサポートREST?

0
Kevin Hakanson