Java RMI的替代方案

Java RMI的替代方案,java,rmi,Java,Rmi,我有一个小型JavaSE应用程序,它实际上是一个位于数据库顶部的胖客户机。为了进一步提高我的Java技能,我决定用它制作一个客户机-服务器应用程序。服务器应用程序与数据库通信并处理各种冗长的操作,而客户端应用程序只接收结果,大部分是长度适中的数组列表和原语 为此,我开始阅读RMI,并编写了Oracle教程,我发现它令人惊讶地难以理解,甚至难以开始工作 还有什么可以替代RMI而不用深入JavaEE的吗 我建议的一种方法是将其用作数据交换的格式。您可以使用将数据从Java对象转换为JSON并返回。可

我有一个小型JavaSE应用程序,它实际上是一个位于数据库顶部的胖客户机。为了进一步提高我的Java技能,我决定用它制作一个客户机-服务器应用程序。服务器应用程序与数据库通信并处理各种冗长的操作,而客户端应用程序只接收结果,大部分是长度适中的数组列表和原语

为此,我开始阅读RMI,并编写了Oracle教程,我发现它令人惊讶地难以理解,甚至难以开始工作


还有什么可以替代RMI而不用深入JavaEE的吗

我建议的一种方法是将其用作数据交换的格式。您可以使用将数据从Java对象转换为JSON并返回。可以使用直接在HTTP协议上完成传输。您可以将其用作REST服务器/客户端,也可以使用自己的REST服务器/客户端(因为您不想使用JEE,它是JEE的一部分)。

我认为它是RMI=远程方法调用


您可以查看、、或如果您想自己发布,请使用JSON发送消息,并使用(来自Google)或setup将JSON转换回另一侧的java对象,如果您不想自己处理发布,请使用提交和接收消息,SIMON与RMI一样易于使用,但初始设置中的陷阱较少。与RMI相比,它还有一些优势。下面是一个简单的hello world示例:


web服务;试一试;它是基于注释的,并且只需要很少的管道。错误的论坛可能是一种完全不同的方法,尽管它是基于JavaEE的。JavaFX可能很有趣。当涉及到两个JavaSE应用程序之间的通信时,RMI是一种标准方式。你不了解RMI的哪一部分?@Santosh:RMI现在不太常用。REST/JSON被越来越多地使用,因为它们与其他非Java平台一起工作。虽然我不想深入了解Java EE的底层细节,但在Spring Boot上使用自动配置的嵌入式Web服务器(如Tomcat)是否可行?通过此选项,您可以创建HTTP API,而不需要或几乎不需要服务器配置和简单的控制器代码。您认为这没有RMI复杂吗?它们都很容易实现,尤其是滚动您自己的JSON服务。请提供一个带示例的链接。每个链接都有示例,寻找具体的例子?OP不想使用J2EE。这需要一个web容器。@Santosh:不太需要。如果愿意的话,可以使用JSON作为从头编写的客户端和服务器之间的数据传输协议。没错,但这需要OP编写一个可以服务REST(通过HTTP)的服务器。否则客户端将如何请求数据?@Santosh:一个非常简单的REST服务器可以用Java轻松编写。但很明显,它太简单,而且容易出错。最好使用类似Jersey的东西,甚至是Servlet,并用JSON发送响应。这意味着没有servlet容器。