是否可以将对象作为参数从一个Java程序传递到另一个Java程序?

时间:2012-10-03 15:55:21

标签: java

我有搜索对象的程序,并将其发送到另一个程序。

我需要传递整个对象。

有可能吗?

3 个答案:

答案 0 :(得分:4)

如果你的意思是“另一个程序”(对另一个程序),你需要

  • 显式serialize并通过文件传递(效率不高但程序链通常在* nix上)
  • 或通过Remote Procedure Call传递。有很多解决方案,比如旧的RMI。我个人喜欢protobuf

答案 1 :(得分:2)

是的,可以通过支持远程过程调用的机制,例如RMIJINI(现在称为Apache River)。

您还可以通过类服务器将传递的对象的类定义提供给其他程序。

答案 2 :(得分:0)

如果你真的想将对象从一个java进程传递到另一个java进程,你必须序列化对象,然后通过网络发送它。

有很多方法可以序列化java对象。第一个也是最简单的一个是将类标记为implements Serializable并使用java内置的序列化机制。您还可以使用XML,JSON或其他格式序列化对象。您的选择可能取决于系统的其他要求,包括您要发送的类型的复杂性。

还有很多方法可以通过网络发送对象。例如,您可以使用套接字来强制使用自己的客户端 - 服务器对。您也可以使用Web服务。

我希望这些技巧能让您第一时间阅读更多内容。然后欢迎您提出更具体的问题。