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 将获取所有字段及其类型,其他将能够更新数据,

更新看起来像调用 1:

/update?method=editProfile 

身体

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

呼叫 2:

/update?method=editBrand 

身体

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

我使用带有方法名称和参数的更新调用该方法,并使用反射加载该方法并且还能够加载字段,

需要帮助
1) 如何根据带注释的字段值更新字段,例如完整名称/名称
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 回答