工作日记-9 远程接口调用注意点

提供远程接口调用时,接口返回的数据对象要实现Serializable接口

eg List<QuestionType> getAllQuestionType();

QuestionType对象必须实现Serializable,远程调用才能成功调用

 public class QuestionType implements Serializable

{

    。。。。。。

}

  http://zhidao.baidu.com/link?url=X9kOBinB2jSixvAAlzEz9ObwvQPoZ-AAkTl8_lzozLdrBhFWAiwaO2rrEsP4Xv8gbzPBZx7yiF6vWgLmCFR9La

没有implements Serializable,你就不能通过rmi(包括ejb)提供远程调用。
serialization 允许你将实现了Serializable接口的对象转换为字节序列,这些字节序列可以被完全存储以备以后重新生成原来的对象。
serialization不但可以在本机做,而且可以经由网络操作(就是猫小说的RMI)。这个好处是很大的----因为它自动屏蔽了操作系统的差异,字节顺序等。比如,在Window平台生成一个对象并序列化之,然后通过网络传到一台Unix机器上,然后可以在这台Unix机器上正确地重构这个对象。
Object serialization主要用来支持2种主要的特性:
1。Java的RMI(remote method invocation).RMI允许象在本机上一样操作远程机器上的对象。当发送消息给远程对象时,就需要用到serializaiton机制来发送参数和接收返回直。
2。Java的JavaBeans. Bean的状态信息通常是在设计时配置的。Bean的状态信息必须被存起来,以便当程序运行时能恢复这些状态信息。这也需要serializaiton机制。
总之如果在网络的环境下做类传输,应该还是implements Serializable
原文地址:https://www.cnblogs.com/narci/p/4046027.html