0

私はユーザーと学校のクラスを持っています、

public class User {
 private Long id;

 @Property("complete_name")
 private String name;

 private List<School> schools;
 ....
 }

public class School {

 private Long id;

 private Sting name;

 private String otherInfo;
}

1回の呼び出しで、User、School、その他のオブジェクトを更新したいと思います。クライアントに動的に処理させたいので。

これを行う方法を考えます。2つの呼び出し1を宣言すると、すべてのフィールドとそのタイプが取得され、その他はデータを更新できるようになります。

更新はCall1のように見えます:

/update?method=editProfile 

{data:[{id:1},{name:"XYZ"}]}

電話2:

/update?method=editBrand 

{data:[{id:1},{otherInfo:"Some Info"}]}

メソッド名とパラメーターを指定してupdateを使用し、リフレクションを使用してメソッドを呼び出します。メソッドをロードし、フィールドをロードすることもできます。


1)注釈付きのフィールド値に基づいてフィールドを更新するにはどうすればよいですか(例:complete_name / name )
2)JSON本文のデータを検証するにはどうすればよいですか
3)複雑なオブジェクトに最適な方法/jsonは何ですか?

4

1 に答える 1

1

ここに複数の質問があり、全体として答えるのは少し難しいと思いますが、次のようになります。

  • JSON <->の場合、JavaオブジェクトはJacksonを参照してください
  • RESTインターフェースの場合、アプリサーバーはHTTPリクエストに応答する方法を提供します。GETメソッドを使用してデータをクライアントに返し、PUTまたはPOSTメソッドを使用してクライアントからデータを送信します。

最も簡単なのは、クライアントに完全なjson化されたユーザー構造を毎回送信させ、それを使用してJavaオブジェクトを構築し(Jacksonを使用)、サーバー側でバージョンを更新する前に検証することです。常にサーバーで検証することを忘れないでください。クライアントでJavascriptに依存しないでください。これが非効率的すぎる場合は、増分更新の実行を検討できます。

うまくいけば、それはあなたが始めることができるでしょう。

于 2012-06-12T14:13:34.390 に答える