如何通过套接字发送和接收Java对象?
问题描述:
我正在编写一个具有客户端和服务器的并发ATM应用程序。如何通过套接字发送和接收Java对象?
我需要知道如何使用Socket编程来调用服务器方法(请求他当前的余额,转移资金等)并获取对象返回给客户端。
答
提到你应该使用Java类RMI
库这只是为了打发使用System.out.println文本。
你可以在这里找到一个小例子:http://download.oracle.com/javase/1.3/docs/guide/rmi/getstart.doc.html
答
套接字只是一种打开服务器和客户端之间的通信通道的方式。套接字连接只是使您可以将字节从一台机器发送到另一台机器,仅此而已。特别是,套接字不直接提供在另一台机器上调用方法的方法。
您需要在套接字上实现应用程序级协议,或者使用一些现有的(标准)应用程序级协议。您可以按照ashiaka的建议使用RMI,或者例如JAX-RS(Java的RESTful Web服务标准API)。这两个都将使用套接字将数据从一台机器传输到另一台机器。
所以是的,它可以使用套接字,但你需要使用的东西,实际上远程调用方法。
答
我发现这个教程中真正有用的 http://java.sun.com/developer/technicalArticles/ALT/sockets/
他们说:
RMI =套接字+对象序列化+一些公用事业
谢谢你们的贡献!
+1:RMI =远程方法调用;) –
是不是可以与套接字?我想要一个简单的解决方案。 – coder9
它可能与套接字,但在这种情况下,RMI更容易。 – ashiaka