GWT:JSON在客户端和服务器端解析相同的api

时间:2012-07-13 06:05:24

标签: json gwt smartgwt

我们使用org.json api解析服务器端的json和GWT JsonParser来解析客户端的JSON。是否有我们可以使用的API,可以在客户端和服务器端使用?

2 个答案:

答案 0 :(得分:0)

您正在寻找GWT AutoBean:http://code.google.com/p/google-web-toolkit/wiki/AutoBean

使用AutoBeans,您可以定义JSON的结构,GWT编译器将处理其余的内容。

答案 1 :(得分:0)

如果您在服务器上使用Java,那么我使用autobeans或GWT-RCP进行比较。尤其如此,如果你不是。

最简洁的方法是REST-RPC / JPA,您可以在客户端,服务器和持久性数据库之间共享一组POJOS。让我吹嘘代表这种技术组合 - 一组POJO而不是三组,在三条战线之间没有任何(或最小的)转换。

您不必编写任何数据转换例程。或者至少,由于序列化约束,或者因为您尝试将GWT和REST与现有模式进行接口而导致的数据转换量极少,这种模式具有高度的不可串行性。

与GWT-RPC类似,在客户端 - 服务器端共享一组Java RPC方法。好吧,几乎相同的一套方法。除了服务器端的返回类型成为客户端的回调通用参数。

技术组合是:

  • JAX-RS(服务器端的Resteasy或Jersey)
  • JAX-RS + GWT =客户端的RestyGWT
  • 服务器端的JPA
  • 在GWT客户端和服务器端通过JAX-RS进行JAXB。
  • 服务器端的Jackson JSON处理器。

REST-RPC的令人信服的理由是

  • 您可以假装您将客户端 - 服务器对话编写为GWT-RPC。服务接口和回调态度是一样的。
  • 客户端和服务器之间的数据交换采用JSON格式。
  • 这意味着您可以在成功设置应用程序后使用浏览器而不是GWT客户端与服务器通信。或jQuery。或PHP或Python作为服务器。
  • 不需要自己使用JSON或XML编码/解码 - 在POJO中处理并且仅在POJO中处理。
  • 您可以独立于GWT客户端使用browser to debug您的Web服务。

REST的态度(除了状态独立请求之外)是称为Web API的概念。像javadoc这样的API,可能 - 但是用JSON或XML来表达。这个API的精彩之处在于 - 您无需生成文档。像javadoc一样,您可以通过服务接口运行Enunciate。

您可以在以下(3+部分)博文中关注我的讨论: http://h2g2java.blessedgeek.com/2012/07/gwt-with-jax-rs-and-jpa-part-3.html

相关问题