2011-08-11 16 views
3

現在、NetbeansとGlassfishを使用してJava REST Webサービスを作成しています。 WebServiceは、SQLデータベース上のCRUD Webサービスです。 シンプルなCRUDメソッドを実装することで、Netbeansが私の仕事のほとんどを行いました。 しかし、私はまだ1つの大きな懸念があります:複合オブジェクト(日付のようなもの)を渡す最善の方法は何ですか? 例:@GET getLessonsByDate(Date start、Date end)関数を記述します。 私が読んだところから、@Consumeアノテーション、@QueryParamアノテーション、または@PathParamを使用できます。何が最高ですか? 2つの日付が必要な場合はどうしますか?別の複合データ型が必要な場合はどうすればいいですか?ComplexクラスのインスタンスをREST Webサービスに渡す場合のベストプラクティスは何ですか?

私を助けてください...

答えて

1

Webサービスは、文字列を操作: (http://en.wikipedia.org/wiki/Java_Architecture_for_XML_Binding

はここであなたを助ける必要がある素敵なチュートリアルです。最終的にはすべてのデータが文字列として書式設定されるため、自分で書式を設定して制御する方がよいでしょう。

私はYYYY-MM-DD HH-MM-SSのような標準的な方法で日付をフォーマットします。他のデータ型に関しては、実際には型に依存しますが、しばしばJSONが良い選択です。世界はゆっくりとXMLからシリアル化フォーマットとしてJSONに向かっています。

2

私はJAXBを使用します。 http://www.vogella.de/articles/REST/article.html

+1

+1 - JAX-RSのデフォルトバインディングレイヤーはJAXBです。また、JAXBは標準(JSR-222)であるため、Metro、EclipseLink MOXy、Apache JaxMeなど、複数の実装を利用できます。ここでは、私がまとめたRESTfulサービスの例へのリンクがあります。http://blog.bdoughan。 com/2010/08/creating-restful-web-service-part-15.html –

0

jsonを使用してパラメータを渡すことができます。 @Consumes( "application/json")アノテーションJsonを使用できるようにします。

関連する問題