2

仕事で REST API を作成しようとしていますが、Spring とうまく統合できるものが欲しいです。私はいくつかを見てきましたが、何か見逃していないかどうかを確認し、人々の意見をもっと知りたいと思っていました.

これが私の基本的な要件です…</p>

  • 統合 (または少なくとも Spring 3.1+ と競合しない)
  • ハイパーメディア リンク (テンプレートに基づく単なる文字列フィールドであっても、何らかの方法で)
  • JSON (XML もいいだろう) のサポート

もう 1 つの要件…</p>

JSON との間のマッピング。ここが今までで一番の難所でした。JSON への/JSON へのマーシェリングをサポートするフレームワークはたくさんありますが、それはすべて単純な POJO マーシェリングです。例として、さまざまな要求に対してオブジェクトのさまざまな表現を提供したい場合があります。

すべてのペット所有者のリストが必要だとします。おそらく、個人とその名前のリストと、ペットへのリンクが必要です。しかし、他のリクエストが特に所有者に対するものである場合、応答の一部として彼らのペットを (所有者オブジェクトの子として) リストしたいと思います。

これを行い、その種のマッピングを定義する良い方法はありますか? それとも、異なるアノテーションを使用して POJO を作成し、エンティティからそれらにデータを転送する必要があるだけですか? 基本的に、さまざまな要求のデータを表す一連の DTO を作成しますか?

4

2 に答える 2

2

Spring MVC はおそらくすべての要件を満たしています - ここに良いリファレンスがあります - http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/mvc.html

于 2012-07-31T14:51:34.523 に答える
0
  1. エンティティを作成します (例 Person.java)
  2. Spring Data JPA を使用し、それらのエンティティのリポジトリ/DAO を自動生成するインターフェースを作成します (例: PersonRepository.java)。
  3. Spring Data REST を使用して、Spring Data リポジトリを HATEOAS/RESTful サーブレットとしてエクスポートします ( /personsURL を参照)

リポジトリ/DAO のコードを記述する必要はありません。Spring Data JPA が DAO を作成します。あなたがしなければならないことは、非常に基本的なインターフェースを作成することだけです。

コントローラーを記述する必要はありません。Spring Data REST は、独自のサーブレットを使用してすべてのリポジトリをエクスポートします。

その間に、Hibernate の hbm2java を使用してデータベース スキーマからエンティティを作成し、Spring Data JPA リポジトリも作成します。

于 2013-03-21T05:11:34.407 に答える