gwt从字符串序列化和反序列化对象(仅限客户端)

gwt从字符串序列化和反序列化对象(仅限客户端),gwt,serialization,deserialization,Gwt,Serialization,Deserialization,我在GWT RPC调用中使用了java对象。在GWT客户机上,我需要将这些对象存储在web sql数据库中。我需要能够将这些对象转换为字符串,然后从字符串中反序列化它们。我见过许多aproaches JSON、AutoBean和其他各种库,但似乎没有一个能够处理我在对象中的循环引用 有人知道可以满足我需求的GWT库吗 GWT RPC本身使用JSON向客户机发送响应,并处理循环引用(至少我认为是这样),所以我不明白为什么不能重用这个机制。有什么想法吗?如果Web SQL服务符合JAX-RS或Jac

我在GWT RPC调用中使用了java对象。在GWT客户机上,我需要将这些对象存储在web sql数据库中。我需要能够将这些对象转换为字符串,然后从字符串中反序列化它们。我见过许多aproaches JSON、AutoBean和其他各种库,但似乎没有一个能够处理我在对象中的循环引用

有人知道可以满足我需求的GWT库吗


GWT RPC本身使用JSON向客户机发送响应,并处理循环引用(至少我认为是这样),所以我不明白为什么不能重用这个机制。有什么想法吗?

如果Web SQL服务符合JAX-RS或Jackson JSON,请使用RestyGWT

您不需要进行任何转换。RestyGWT将POJO编码为兼容Jackson的JSON

另一方面,您必须阅读JAX-RS、JAXB和Jackson注释。这对我来说不是一个反面,而是一个学习广泛使用的web服务技术的激动人心的机会

GWT RPC本身使用JSON将响应传输到客户端

      • 这是一种不准确的看法
  • GWT RPC对象编码被故意混淆,难以破译,并且格式稳定性在不同版本之间无法保证
  • RPC数据交换中没有json
如果您的语句为true,那么您就不需要扩展GWT RemoteServiceServlet以服务RPC请求的servlet


顺便问一下,那是什么web SQL服务?专有内部?

如果Web SQL服务符合JAX-RS或Jackson JSON,请使用RestyGWT

您不需要进行任何转换。RestyGWT将POJO编码为兼容Jackson的JSON

另一方面,您必须阅读JAX-RS、JAXB和Jackson注释。这对我来说不是一个反面,而是一个学习广泛使用的web服务技术的激动人心的机会

GWT RPC本身使用JSON将响应传输到客户端

      • 这是一种不准确的看法
  • GWT RPC对象编码被故意混淆,难以破译,并且格式稳定性在不同版本之间无法保证
  • RPC数据交换中没有json
如果您的语句为true,那么您就不需要扩展GWT RemoteServiceServlet以服务RPC请求的servlet


顺便问一下,那是什么web SQL服务?内部专有?

我想你误解了我。没有涉及任何web服务。我说的是web sql数据库(sqlite db)。我需要在本地sqlite数据库中持久化对象(作为字符串),并将该字符串从db反序列化回对象。所有这些都是浏览器本地的。restygwt有一个我可以使用的jsonecoder/decoder。它不支持循环引用,除非我使用无法使用的注释。我想我可能被迫尝试删除POJO中的循环依赖项(或使它们成为暂时的),并将restygwt用于json/编码/解码或另一个库,如get-Variable,并在运行时添加循环引用。我想你误解了我的意思。没有涉及任何web服务。我说的是web sql数据库(sqlite db)。我需要在本地sqlite数据库中持久化对象(作为字符串),并将该字符串从db反序列化回对象。所有这些都是浏览器本地的。restygwt有一个我可以使用的jsonecoder/decoder。它不支持循环引用,除非我使用无法使用的注释。我想我可能不得不尝试删除POJO中的循环依赖项(或使其成为暂时的),并将restygwt用于json/编码/解码或其他库,如get-Variable,并在运行时添加循环引用