【问题标题】:How to handle a serialized object sent by java over tcp [closed]如何处理java通过tcp发送的序列化对象[关闭]
【发布时间】:2013-07-13 20:28:44
【问题描述】:

我的服务器应用程序在 java 上,我的客户端在 delphi 上,所以我需要从 java 发送一个序列化对象到我的客户端,并将接收到的数据放在这样的记录中:

在java中

 class Login implements Serializable
 {
    public String userName;
    public String password;
    public int version;
 }

在德尔福中

   type
    login = record
     username : string;
     password : string;
     version  : integer;
    end;

问题是我不知道java如何序列化一个对象,所以我可以把值放在我的记录上。

【问题讨论】:

  • 要在语言之间进行序列化,您必须找到一种适用于 Java 和 Delphi 的序列化形式。如果找不到,可以自己写。 Serializable 只能在 JVM 语言中使用。

标签: java delphi


【解决方案1】:

序列化仅在 JVM 同时进行序列化和反序列化时才有用。

在大多数其他情况下,您最好使用为此设计的传输格式。我建议为此研究一种简单的 XML 格式或 JSON。

【讨论】:

    【解决方案2】:

    也许你可以使用gson库以JSON格式发送对象,然后在delphi端解析它。

    【讨论】:

      【解决方案3】:

      检查java的可序列化信息。您最好的选择可能是在序列化的 inpl 上实现自定义。并按照 Thorbjorn 的建议,使用 JSON 之类的格式作为输出格式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-07-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-15
        • 1970-01-01
        相关资源
        最近更新 更多