![]() |
1
5
我写了问题中提到的那篇文章(感谢链接!). 一如既往,答案是“视情况而定”。我使用了GWT-RPC和JSON。 如上所述,GWT-RPC允许在传输Java对象(有一些限制)上的一些严重的生产力。一些逻辑可以共享,GWT负责整理/解组对象。 JSON允许其他非GWT客户机跨域访问和使用。您可以通过覆盖类型来适应,但不能共享任何行为(如验证)。JSON也可以很容易地压缩和缓存,不像GWT-RPC(上次我看的时候)。 由于我们不知道有效载荷是什么,所以很难给出性能建议。我建议(再一次,像上面提到的那样)测试你自己。 |
![]() |
2
13
GWT-RPC通常是首选的,当后端也是用Java编写的,因为它意味着不必在每个端对对象进行编码和解码——您可以将一个普通Java对象发送到客户端,并在那里使用它。
JSON(使用)
如果我不得不猜测的话,我会说GWT-RPC也会导致更小的传输对象,因为GWT团队针对这种情况进行了优化,但两者都可以工作,而JSON仍然非常小。在大多数情况下,归根结底就是为了开发人员的方便。 至于测量请求时间的工具,您可以使用chrome/webkit的开发工具,或者使用firefox的firebug扩展,或者在应用程序中测量请求时间,并在延迟的收集和分析请求中将这些度量数据发送回服务器。 |
![]() |
3
4
除了其他答案之外,还有一点需要考虑,这可能影响您对JSON的决定,即使您在后端使用Java: 也许将来某个时候,您希望允许非GWT客户机与您的服务器通信。许多现代站点都提供某种API访问,如果您使用的是JSON,那么基本上已经有了一个相对开放的API。 |
![]() |
4
1
一般来说,我同意杰森——如果服务器端使用Java,请使用GWT-RPC。您将能够重用pojos、验证逻辑等。rpc还倾向于更好地使用mvp和代码拆分。 但是,如果您的服务器端使用其他任何东西,请使用json-但不要担心,使用 JavaScript Overlay Types 使用JSON很简单。但是,您将无法在服务器上重用客户端的代码(ymmv)。 从性能的角度来看——我想说JSON在这里有优势。现代浏览器有一些非常好的JSON快速编码/解码方法。我不确定什么是GWT-RPC“幕后”,但我怀疑它在速度方面能否击败JSON。至于有效负载——这取决于开发人员(JSON中对象的名称等),但我想说,一般来说,JSON也(稍微)小一些。在服务器上启用压缩(例如, mod_deflate on Apache HTTP )把钻头挤得更紧;) |
![]() |
Community wiki · 谷歌番石榴单例事件总线多次触发 1 年前 |
![]() |
Toto · GWT 2.5.1+源映射(超级开发模式)-局部变量评估 7 年前 |
![]() |
quarks · 使用GWT创建ISO 8601日期字符串 7 年前 |