2

我们即将创建网页的移动版本。在那个页面中,我们以服务方式使用了 RPC 服务,而不是完全面向实体。因此,我们将有两个客户端(Web 和移动)调用一台服务器。

现在我们想要重用支持多个客户端版本的所有服务器代码,并避免RPC 调用所具有的所有“dto 版本地狱”。

我已经看到我们需要创建一个包装器,即服务器中的另一层,用于向移动版本(GWT+phonegap 以及未来:IOS、Android ......)公开方法。稍后这一层将重用所有服务器代码(模型、存储库......等),在服务器中,对 BigTable 的访问是通过 Objectify 完成的。

您会为这个新层使用哪种技术?

4

1 回答 1

2

对于移动应用程序,我喜欢在客户端和 AutoBeans 和 Restful API 上使用 AutoBeans + RequestBuilder,后者(也)在服务器端生成 JSON。

使用 AutoBeans,您可以使用 Java 接口定义数据结构。(这为您提供了一些编程依据)并且 AutoBeans 在服务器和客户端为您处理从 Object 到 JSON 以及从 JSON 到 Object 的转换。

结合起来,您可以构建一个非常快速且良好的架构 RPC。RequestFactory 使用 AutoBeans 作为序列化的默认机制。

如果您决定支持其他平台,您仍然可以使用 JSON 并在那里解析它。如果您决定支持原生 android 应用程序,AutoBean 机制应该在 android vm 上运行良好。

AutoBeans 的一个很好的例子可以在这里找到:http ://code.google.com/p/google-web-toolkit/wiki/AutoBean

于 2013-02-09T16:48:12.577 回答