java - 是否可以使用面向 GWT RPC 的命令模式而不使用 RPC 序列化?

标签 java json serialization gwt dart-js-interop

在重构基于 GWT 的框架的客户端-服务器端通信过程中,我遇到了有关 GWT 3.0+ 中可能消除 RPC 的讨论

我们的框架目前基于 RPC-oriented Command Pattern 。目前我想知道如何在不从根本上改变业务代码的情况下摆脱 RPC。

我的第一个方法是使用 JSON 来序列化/反序列化 Action 和 Result。但至少在客户端方法 fromJsonString() 和 toJsonString() 需要手动实现,因为客户端没有反射。 在阅读了 GWT 2.7 中引入的 JSInterop 后,我想知道是否有更好的方法在客户端和服务器端序列化/反序列化操作和结果。

不幸的是,我现在有点陷入困境。是否已经有方法可以在没有 RPC 的情况下实现命令模式?

致以诚挚的问候

最佳答案

此时(2016 年)我不会太担心 RPC 可能被淘汰。考虑到 GWT 目前的发布速度,我们可能需要一段时间才能看到版本 3,而且即便如此,消除 RPC 也不是一件确定的事情。因此从优先级的角度来看,没有理由花太多精力。

过去的 RPC future 很可能基于 JSON。其中 json 代码是从 Java 类生成的。有一些库可以做到这一点。例如查看 gwtjsonrpc 。它使用 json-rpc(正如名称所示)。您可以将其用作命令模式,但它不是命令模式的直接实现。

关于java - 是否可以使用面向 GWT RPC 的命令模式而不使用 RPC 序列化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39496765/

相关文章:

iphone - iPhone:如何从JSON请求获取地址?

java - 可以直接使用DataInput和DataOutput,为什么还要使用Writable?

java - 序列化如何协调静态成员?

php - 来自 MySQL 结果的 JSON 对象

c# - JsonConvert DeserializeObject 区分大小写

java - 使用两个字符java多次分割字符串

java - 是一个 boolean 型实例变量默认值是true还是false

java - 声明 LinkedBlockingQueue<String> 时出现 NullPointer 异常

java - 防止 Java 中偶尔出现 ConcurrentModificationException 的最佳做法是什么?

json - 如果 avro 模式包含联合,如何将 json 对象转换为 Avro 对象