GAE - 如何将服务器对象信息传递给客户端?

时间:2013-04-12 14:30:45

标签: java json google-app-engine

在Google App Engine中,我在服务器上有一个对象/模型。我们称之为“汽车”。现在“Car”对象有几个属性(“Model”,“Year”等)。我想将“Car”对象的信息从服务器传递给客户端,包括一些(如果不是全部)它的属性。一种选择是通过在两者上共享模型,在客户端和服务器上完全定义“Car”对象,但这超出了我的需要。另一个是定义模型的客户端版本,但这导致两个模型之间的混淆,实际上我只是想要模型的一些属性。所以我很可能只想传回我想要的一些信息。我知道我可以做的一个方法是将信息转换为json字符串并传递它。但是,我不确定这是否是首选方法,或者是否存在缺点。 App Engine是否有首选方式传递此类信息?在json字符串中传递信息有什么缺点?是否有另一种方法具有与json字符串相同的优点但没有这个缺点?非常感谢!

1 个答案:

答案 0 :(得分:4)

没有首选方式,无论哪种方式最适合您的应用。从/到JSON的手动(反)序列化似乎对我来说太过分了。我通常做的是创建一个包装类并将其放在客户端和服务器共享的包中。为了使代码更易于维护,我倾向于(即尽可能)定义一个构造函数,该构造函数接收底层对象并提取所需的属性子集,使包装器对象不可变等等。