远程方法调用传递对象示例图
一般要传给远程方法的参数比较多时可以用对象传递。(完全本人的见解)
客户端RMI的远程方法如果要传对象参数,可以创建一个接口,并extends Serializable,其中的方法要全部是throws RemoteException,并定义一个实现类,自然方法也要全部throws RemoteException。类和接口定义好了,各复制一份放到客户端和服务器上,为了方便说明,在这里定义的接口和类命名为RemoteInterface 和RemoteClass,当客户端RMI的远程方法通过RemoteInterface把RemoteClass当参数传递到服务器RMI时,服务器就可以使用客户端RMI中RemoteClass的数据。同理,当服务器RMI的远程方法通过RemoteInterface把RemoteClass当参数返回给客户端RMI时,客户端就可以使用服务器RMI中RemoteClass的数据。
对于那些Java中可序列化的类,可以用Java提供的一个工具查看,serialver –show,如果是可序列化的,就可以调用远程方法传递对象,一般可以当对象传递的参数是基本数据类型、实现Serializable接口的类、实现RemoteException的类。